カブロボ Archive
カブロボその1
- 2008-09-15 (月)
- カブロボ | プログラミング | 株式投資 | 自動トレーディングへの道
とりあえず何か簡単でいいからカブロボを作ろうということで作成してみた。
25日移動平均線の傾きの正負で短期トレンドを決める
25日線の傾きが正なら(短期)上昇トレンド、負なら短期下降トレンドと判断することにする。上昇トレンドの株は買いのみ。下降トレンドの株は空売りしかしない。
5日移動平均線の乖離率で絞り込む
上昇トレンドの銘柄は、5日移動平均線の乖離率が-3%から-7%の間にあるとき、次の取引(翌日あるいは後場)に成り行き買いで発注する。設定を変更しないとカブロボは資金の10%しか買えないので、めいっぱい買うように指示する。逆に下降トレンドの場合は5日線を3%から7%上抜いているときに空売りする。
なぜ7%かというと、あまり極端に突き抜けている場合は何かとんでもない材料があったと判断することにしたからである。
ロスカットはしないことにした
デフォルトで-20%の損失で強制ロスカットになっているため、ロスカットはあえてしないことに(パラメータとして-40%の損失でロスカットにしてあるが、これが発動することはない)。
脱出条件は高値から10%以上下落したとき
色々な人のカブロボを見ていると「5%の利益で利益確定、10%の損失でロスカット」のようなものが多いように思う。しかし、これだと利益を十分に確保できないので、貪欲に利益を追求するようにした。上昇している間はずっと放置し、下落トレンド化が鮮明になると初めて売ることにする。ただし利益がマイナスの場合は売らない。
結果
■■最終成績表■■■■■■■■■■■■■■■■■■■■
–●取引データ●————————————–
初期資産額(円) :50,000,000
最終資産額(円) :54,256,219
取引開始日 :2006-01-04
取引終了日 :2006-12-29
経過日数(日) :359
運用日数(日) :248
総トレード数 :120
勝ちトレード数 :74
負けトレード数 :46
勝率(%) :61.67
年間平均トレード数 :120
全トレード平均期間(日) :70
勝ちトレード平均期間(日) :70
負けトレード平均期間(日) :70
最長フラット期間(日) :20
トータル約定金額(円) :426,073,050
–●損益データ●————————————–
トータル純損益(%) :8.51
勝ちトレード純利益(%) :27.16
負けトレード純損失(%) :-17.25
買いトレード純損益(%) :3.71
売りトレード純損益(%) :6.2
平均損益(%) :1.42
平均利益(%) :9.33
平均損失(%) :-11.3
年率換算利回り(%) :8.41
最大勝ちトレード(%) :42.12
最大負けトレード(%) :-22.74
–●指標データ●————————————–
平均ドローダウン(%) :2.51
最大ドローダウン(%) :12.72
損益レシオ(倍) :0.98
プロフィットファクター(倍):1.57
リスクレシオ(倍) :0.66
年率シャープレシオ(倍) :0.8
年率ボラティリティ(%) :10.49
■■■■■■■■■■■■■■■■■■■■■■■■■■■
考察
最大勝ちトレードが42%なのが特徴と言える。一方で損失も大きい。設定によって小さくこつこつ、大きく負けないカブロボも可能だけれど、貪欲な利益を追求するようにした。パラメータはいろいろ調整してみた。高値から5%下がったら売るより10%くらい我慢した方が結果がよいとか、購入条件も3〜7%としたけれど、これも色々調整した結果。
パラメータの調整は自動でできるようになるといいのだけれど。
今更カブロボ
カブロボコンテスト
システムトレードに興味が出てきたところで、バックテストなどをしないといけない。どうせなら、ということでカブロボコンテストを利用させてもらおうと思う。
まずは自動株式売買ロボット・カブロボのサイトに登録をしてSDKをダウンロード。Eclipseでプロジェクトを作る。
続いて、プロジェクトの上で右クリック→Build Path→Add External Archiveを選択して、kaburobo-sdk-2/libにあるskaburobo-sdk.jarとhsqldb.jarを加える。
実行テストとして簡単なコードを書いてみる。
サンプルコード
import java.util.List;
import jp.tradesc.superkaburobo.sdk.driver.RobotDriver;
import jp.tradesc.superkaburobo.sdk.robot.AbstractRobot;
import jp.tradesc.superkaburobo.sdk.trade.InformationManager;
import jp.tradesc.superkaburobo.sdk.trade.TradeAgent;
import jp.tradesc.superkaburobo.sdk.trade.data.Stock;
public class KabuRobo extends AbstractRobot {
public static void main(String[] args) {
String[] arg = { "-n", KabuRobo.class.getName() };
RobotDriver.main( arg );
}
@Override
public void order(TradeAgent tradeAgent)
{
InformationManager im = InformationManager.getInstance();
List stockList = im.getStockList();
for(Stock stock: stockList)
{
System.out.print(stock.getStockCode() + ":");
System.out.println(stock.getStockName());
}
System.out.println("以上");
System.exit(0);
}
@Override
public void screening(TradeAgent tradeAgent) {
System.out.println("Robot Screeing Start");
}
}
ポイント
まずmain()が必要。この中でRobotDriver.main()に自分のカブロボクラスを渡してやる。
あとはorder()やscreening()をオーバーライドしてやる。
実行
プロジェクトで右クリック→Run As→Run Configurationを選択し、Environmentタブを選ぶ。ここでKABUROBO_HOMEを追加し、パスを教えてやる。これで準備OK。Runすると取引可能銘柄を表示してexit()する。
拡張パックを入れる
data300を公式サイトからダウンロードする。解凍してdata50と同じ階層に設置して、robot-config.xmlのdata50をdata300に書き換えるが、何故か動かない。付属のテキストには
○検証可能期間
2006年1月4日から2006年12月29日までの期間です。
とあるけれど、ネットを検索すると4月1日からという情報があるので、
1332:日本水産
1721:コムシスホールディングス
1801:大成建設
1802:大林組
1803:清水建設
1808:長谷工コーポレーション
1812:鹿島建設
1860:戸田建設
1878:大東建託
1925:大和ハウス工業
1928:積水ハウス
1942:関電工
1951:協和エクシオ
1963:日揮
2002:日清製粉グループ本社
2261:明治乳業
2267:ヤクルト本社
2282:日本ハム
2331:綜合警備保障
2433:博報堂DYホールディングス
2501:サッポロホールディングス
2502:アサヒビール
2503:キリンビール
2579:コカ・コーラウエストジャパン
2593:伊藤園
2651:ローソン
2670:エービーシー・マート
2730:エディオン
2768:双日
2779:三越
2784:アルフレッサHD
2801:キッコーマン
2802:味の素
2897:日清食品
2914:JT
3101:東洋紡績
3105:日清紡績
3332:JFE商事ホールディングス
3337:サークルKサンクス
3382:7&IHD
3401:帝人
3402:東レ
3404:三菱レイヨン
3405:クラレ
3407:旭化成
3591:ワコールホールディングス
3861:王子製紙
3893:日本製紙グループ本社
4004:昭和電工
4005:住友化学
4043:トクヤマ
4062:イビデン
4063:信越化学工業
4091:大陽日酸
4118:カネカ
4182:三菱ガス化学
4183:三井化学
4185:JSR
4188:三菱ケミカルホールディングス
4204:積水化学工業
4208:宇部興産
4217:日立化成工業
4307:野村総合研究所
4321:ケネディクス
4324:電通
4452:花王
4502:武田薬品工業
4503:アステラス製薬
4507:塩野義製薬
4519:中外製薬
4523:エーザイ
4535:大正製薬
4543:テルモ
4568:第一三共
4631:大日本インキ化学工業
4661:オリエンタルランド
4676:フジテレビジョン
4680:ラウンドワン
4681:リゾートトラスト
4704:トレンドマイクロ
4716:日本オラクル
4723:グッドウィル・グループ
4732:ユー・エス・エス
4756:CCC
4768:大塚商会
4901:富士写真フイルム
4902:コニカミノルタ
4911:資生堂
5001:新日本石油
5016:新日鉱ホールディングス
5108:ブリヂストン
5110:住友ゴム工業
5201:旭硝子
5214:日本電気硝子
5233:太平洋セメント
5333:日本碍子
5334:日本特殊陶業
5401:新日本製鐵
5405:住友金属工業
5406:神戸製鋼所
5407:日新製鋼
5411:JFEホールディングス
5471:大同特殊鋼
5486:日立金属
5631:日本製鋼所
5711:三菱マテリアル
5713:住友金属鉱山
5801:古河電気工業
5802:住友電気工業
5803:フジクラ
5901:東洋製罐
5929:三和シヤッター工業
5938:住生活グループ
5943:ノーリツ
5947:リンナイ
5991:日本発条
6113:アマダ
6146:ディスコ
6201:豊田自動織機
6273:SMC
6301:コマツ
6302:住友重機械工業
6305:日立建機
6326:クボタ
6361:荏原製作所
6366:千代田化工建設
6367:ダイキン工業
6370:栗田工業
6417:SANKYO
6448:ブラザー工業
6460:セガサミーホールディングス
6471:日本精工
6472:NTN
6473:ジェイテクト
6479:ミネベア
6481:THK
6501:日立製作所
6502:東芝
6503:三菱電機
6504:富士電機ホールディングス
6581:日立工機
6586:マキタ
6701:NEC
6702:富士通
6723:NECエレクトロニクス
6724:セイコーエプソン
6752:松下電器産業
6753:シャープ
6758:ソニー
6762:TDK
6764:三洋電機
6773:パイオニア
6806:ヒロセ電機
6841:横河電機
6857:アドバンテスト
6861:キーエンス
6902:デンソー
6923:スタンレー電気
6952:カシオ計算機
6954:ファナック
6967:新光電気工業
6971:京セラ
6988:日東電工
6991:松下電工
7011:三菱重工業
7012:川崎重工業
7013:石川島播磨重工業
7201:日産自動車
7202:いすゞ自動車
7203:トヨタ自動車
7211:三菱自動車工業
7259:アイシン精機
7261:マツダ
7267:ホンダ
7269:スズキ
7272:ヤマハ発動機
7453:良品計画
7459:メディセオ・パルタックホールディングス
7532:ドン・キホーテ
7731:ニコン
7733:オリンパス
7741:HOYA
7751:キヤノン
7752:リコー
7832:バンナムHD
7862:トッパンフォームズ
7911:凸版印刷
7912:大日本印刷
7915:日本写真印刷
7936:アシックス
7951:ヤマハ
7966:リンテック
7984:コクヨ
8001:伊藤忠商事
8002:丸紅
8012:長瀬産業
8015:豊田通商
8016:オンワード樫山
8028:ファミリーマート
8031:三井物産
8035:東京エレクトロン
8036:日立ハイテクノロジーズ
8053:住友商事
8056:日本ユニシス
8058:三菱商事
8060:キヤノンMJ
8078:阪和興業
8113:ユニ・チャーム
8129:東邦薬品
8136:サンリオ
8184:島忠
8218:コメリ
8227:しまむら
8233:高島屋
8234:大丸
8238:伊勢丹
8242:阪急百貨店
8252:丸井
8253:クレディ セゾン
8267:イオン
8268:西友
8270:ユニー
8273:イズミ
8281:ゼビオ
8282:ギガスケーズデンキ
8303:新生銀行
8306:三菱UFJフィナンシャル・グループ
8308:りそなホールディングス
8309:三井トラスト・ホールディングス
8316:三井住友フィナンシャルグループ
8326:福岡銀行
8328:札幌北洋ホールディングス
8331:千葉銀行
8332:横浜銀行
8333:常陽銀行
8355:静岡銀行
8377:ほくほくフィナンシャルグループ
8403:住友信託銀行
8404:みずほ信託銀行
8411:みずほフィナンシャルグループ
8473:SBIホールディングス
8515:アイフル
8564:武富士
8572:アコム
8574:プロミス
8583:UFJニコス
8591:オリックス
8601:大和証券グループ本社
8604:野村ホールディングス
8606:新光証券
8615:三菱UFJ証券
8752:三井住友海上火災保険
8766:ミレアホールディングス
8801:三井不動産
8802:三菱地所
8804:東京建物
8815:東急不動産
8830:住友不動産
8840:大京
8868:アーバンコーポレイション
8870:住友不動産販売
8874:ジョイント コーポレーション
9005:東京急行電鉄
9020:東日本旅客鉄道
9021:西日本旅客鉄道
9022:東海旅客鉄道
9041:近畿日本鉄道
9042:阪急ホールディングス
9062:日本通運
9064:ヤマトホールディングス
9101:日本郵船
9104:商船三井
9202:全日本空輸
9301:三菱倉庫
9364:上組
9401:TBS
9404:日本テレビ放送網
9432:NTT
9433:KDDI
9437:NTTドコモ
9501:東京電力
9503:関西電力
9531:東京瓦斯
9532:大阪瓦斯
9602:東宝
9613:NTTデータ
9684:スクウェア・エニックス
9735:セコム
9737:CSKホールディングス
9744:メイテック
9747:アサツー ディケイ
9766:コナミ
9831:ヤマダ電機
9843:ニトリ
9875:マツモトキヨシ
9962:ミスミグループ
9984:ソフトバンク
9987:スズケン
9989:サンドラッグ
Home > カブロボ
- Search
- Feeds
- Meta














