【アイデア】移動平均を変動させた決済
WVIさんのセミナー で話があった決済方法です。
・X日移動平均の逆指値で決済注文
・ただしX日は35日から日々1日短くしていき、最短で10日までとする
ちょっとわかりにくいのですが
(例)
新規建て当日 → 35日移動平均
翌日 → 34日
2日後 → 33日
としていき
25日後以降 → 10日で固定
という感じです。
こちらは実装のイメージがわきますね。
【アイデア】標準偏差を用いた決済
- トレーディングシステム徹底比較 第2版 - 日本市場の全銘柄の検証結果付き/ラーズ ケストナー
- ¥20,790
- Amazon.co.jp
において紹介されている決済方法です。
・30日分標準偏差の3倍の利益、損失で決済する。
どう実装したらいいのやら。。。
【解析】トレーリングストップ2
タタさんまたもコメント ありがとうございました
マニュアルP36を見ると
-----------------------------------------------------------------
価格の動きに対する仮定をおき適用する必要がありますのでご注意ください。
実際の価格の動きと仮定した価格の動きが異なる場合、
シグナルの発生は違う結果になることもあります。
-----------------------------------------------------------------
とあり、以下にいろいろとパターンが書かれています。
よく読んでないのですが、これが原因になりそうですね。
実運用を想定して作業されている方はこの辺の仕様を
きちんと理解しておく必要がありそうです。。
【実装】40/20 ドンチャン・チャネル・ブレイクアウト
こちらのアイデア を実装してみました
------------------------------------------------------
Value2 = DayHigh(1);
Value5 = DayHigh(1);
Value3 = DayLow(1);
Value6 = DayLow(1);
For Value1 = 1 to 40 Begin
//日足以下の周期で過去40日間の高値、安値を決定
if DayHigh(Value1) > Value2 then {
Value2 = DayHigh(Value1);
}
if DayLow(Value1) < Value3 then {
Value3 = DayLow(Value1);
}
//日足以下の周期で過去20日間の高値、安値を決定
If Value1 <= 20 then {
if DayHigh(Value1) > Value5 then {
Value5 = DayHigh(Value1);
}
if DayLow(Value1) < Value6 then {
Value6 = DayLow(Value1);
}
}
End;
//明日、過去40日間の最高値を逆指値で買う
//if *sTime == 090000 then {
Buy("買", AtStop, Value2);
//}
//明日、過去20日間の最安値を逆指値で決済
If MarketPosition == 1 then {
ExitLong("買決済", AtStop, Value6);
}
//明日、過去40日間の最安値を逆指値で売る
//if sTime == 090000 then {
Sell("売", AtStop, Value3);
//}
//明日、過去20日間の最高値を逆指値で決済
If MarketPosition == -1 then {
ExitShort("売決済", AtStop, Value5);
}
------------------------------------------------------
・40日間の高値、安値を取得するのにForループ文を用いています。
処理の内容は
①Vlaue1が1から40の間処理を行う
②DayHigh(Value1) ←1(前日)~40(40日前)の高値を
Value2 ← 暫定的な過去40日間の最高値
と比較し、DayHigh(Value1)のほうが高ければValue2を更新する。
たとえば過去の高値が前日から
15200, 15180, 15230, 15210
となっていたとき、Value2は
15200, 15200, 15230, 15230
と変化します。
(日足で使うならばNthHighest(1, High, 40)でいいと思います。)
③②で求めた過去20日40日の高値、安値で
売買注文を醗酵します。
まだYes Languageの言語使用をきちんと理解できていないのですが、
チャートが完成した時点(日足だと大引け時点)で発注すれば、
翌日から有効になるというイメージで作成していますが、
意図したとおりの実装になっているのでしょうか?
【解析】トレーリングストップ
タタさんから以下のコメントを頂きました。
>■無題
>9年分の日足で検証してみましたが、同じ結果になりませんでした…。収益もマイナスになります。あれ?
>
>SetStopTrailingが、なぜか同じ足で決済してしまうのですが、そんなことは無いですか?
同じソースならば同じ結果になりそうなのですが・・・
誤りについては推測ですが、
トレーリングストップの設定の仕方がおかしいのかと思っています。
ソースでは
SetSTopTrailing(2, 0, PercentStop, 0);
としています。
マニュアルには
---------------------------------------------------------------------
最大収益対比下落 : SetSTopTrailing
関 数 : SetStopTrailing([drop price], [floor], [method], [trailing_method])
- [drop price] : 収益減少許容値、この値が「0」なら最大収益対比の下落設定が解除されます。
- [floor] : 最小収益値
- [method] : 省略可能。基本値は Percent。
PercentStop : 収益減少許容値と最小収益値を新規値の %(Percent)にします。
PointStop : 収益減少許容値と最小収益値を円(Point)にします。
- [trailing_method] : 省略可能。基本値は「0」(収益金額対比) 。
0 : 収益金額対比、新規て後、新規単価と最高単価の差による対比。
1 : 最高単価対比、新規て後、最高単価対比の下落時に決済。
---------------------------------------------------------------------
とあります。
疑問点は
・チャートが完成する時点(日足なら大引け段階)で
トレーリングストップの処理が動いている?それは有効なの?
・0%の収益の後、新規単価と最高単価の差の2%の収益が減少したら決済
という指定が有効なのか?(新規単価=最高単価だったらどう処理されるの?)
有効であるならば10円上がって5円下がっただけでも引っかかるのでほぼ日計になると思います。
というところです。
オンラインセミナーとかで聞いてみたいと思いますが、
ご存知の方がいらっしゃいましたら教えてください。
決済の仕方に不備があるようなのでいろいろと試してみたいと思います。
日々勉強です。
高橋謙吾さん 2
- 株 システムトレードで儲ける奥義書-日本上陸! 本格的自動売買マニュアル/高橋謙吾
- ¥1,365
- Amazon.co.jp
P114 ブレイクアウト+RSI
過去50日のローソク足より高い → 買い
RSI > 70 買い RSI < 30 売り
両方を同時に満たす。
いろいろなサンプルが載っていたのですが、
トレードスタジアム のユーザであれば
マニュアルに類似のものが載っているのでこちらの本は特に必要ないかなと。
高橋謙吾さんの書籍であればこちらのほうが圧倒的にお勧めできます。
- コンピュータトレーディング入門 (現代の錬金術師シリーズ 49) (現代の錬金術師シリーズ 49)/高橋謙吾
- ¥2,940
- Amazon.co.jp
山本哲也さん
- Excelシートで簡単にできる 実践システムトレード入門/山本 哲也
- ¥2,625
- Amazon.co.jp
メモ
P22 収益性・安定性・継続性
P58 米国株、為替データからの売買
トレードスタジアム でシステムトレードを行うという観点で
書籍を見ていますが、その面から見ると有益な情報は少ない気がします。
今週は仕事が忙しいので、実装・検証は少なくなるかもしれません。
ご容赦下さい。
アート・コリンズ
- 株価指数先物必勝システム――ノイズとチャンスを見極め、優位性のあるバイアスを取り込め (ウィザードブックシリーズ 137)/アート・コリンズ
- ¥6,090
- Amazon.co.jp
たくさんの売買ルールとソースコード、検証結果を記載した書籍です。
メモしたことは多いのですが、個別にシステム化アイデアにアップして、
トレードスタジアム で実装・検証していきたいと思います。
こちらの本と性質が似ていますね。
トレーディングシステム徹底比較 第2版 - 日本市場の全銘柄の検証結果付き/ラーズ ケストナー
- ¥20,790
- Amazon.co.jp
