イキナリ作ったトレーリングするトラップリピートイフダン
命名:【トルリピ スーパー1】ですが、
トレール中の価格ポジションが本来の利確値に到っても、持ちっパのため該当価格辺りで
レンジした場合みすみすその間の
くるくるを見捨てているために、
いくらトレールで頑張って1回あたりの収益性を向上させても、
利確回数で負けてしまい、ノーマルのトラップリピートと大差無い結果と成ると仮説を立てました。
そこで、納得できないくらいトレールの効果が無い!!くだらない!!動作状態を
チャートで確認してみました。
これは!!
これはヒドイ!!
予想通り、ヤッパリ、みすみす、くるくるを逃しています。この場合7回も!!
時間にして12時間でしょうか。。。こんな現象が対象時間帯の1/3はあります!!
普段は小刻みなレンジのようですね。俗に言う「動いて無い日」がなんて多い事か。
あーーーこれでは、決済回数も少なくなるわけです。
で、少しでも、くるくるの手助けをしようと改装しました。(改造レベルじゃ無いくらいの作り直しだったので・・・改装)

トレーリング中の価格ポジションもにもLIMIT注文掛けるようにしました。
トレーリング中のはそのまま独立して動いてもらって、新たに同じ価格帯に来たら売りトラップするって計画です。
今回の動作:
・1分足の開始時にトレールします。
・トレーリングストップに引っかかるか、移動平均線のいい加減なクロスリミッターで決済
・トレール中の価格建てポジションがあっても最低利確値をストップロス設定後に、
同じ価格建てで第2軍としてLIMIT注文します。これで、細かいレンジにも多少は効果が有ると良いのですが・・・
機能:
1・トレーリングのON/OFF選択可能
2・移動平均線リミッターのON/OFF選択可能
3・移動平均線リミッターでの作動倍率変更可能
(クロス時に儲かってるポジションしか決済しませんが、決済値幅に対する倍率を指定可能)
4・トラップのストップオンリー化切替可能
5・トラップのリミットオンリー化切替可能
6.第2軍の発動ポイントを本来の利確値との差で指定可能。(デフォルトは5銭)
EA→
RID_Order_trailing2.ex4( 当然ながら動作保障はしません。 )まずは、ノーマルのくるくるワイド手法を比較用にバックテストしました。
チャート条件:
AUD/JPY
1分足
//マジックナンバー
extern int magic0= 1000;//同じ通貨ペアで複数動かすとき変更して下さい
extern int clear = 1;//0で全予約キャンセル後指定しなおし
// 外部パラメータ
extern double TrailingStop = 0;// 500=50銭 //トレーリングpips【 0=トレーリングSW OFF】
extern double TrailingStop_S = 0;// 500=50銭 //トレーリングpips【 0=トレーリングSW OFF】
(上記のパラメータは通常口座では50=50銭と成ります。)
extern int MA1 = 0;// //トレーリング以外の決済短期移動平均の期間【 0= OFF】
extern int MA2 = 0;// //トレーリング以外の決済長期移動平均の期間【 0= OFF】
extern double MA_Close = 0; // トレーリング以外の決済時に倍率以上値なら買い決済【 0= OFF】
extern double MA_Close_S = 0;// トレーリング以外の決済時に倍率以上値なら売り決済【 0= OFF】
extern int Slippage = 30; //スリッページpips
(上記のパラメータは通常口座では3=3pipsと成ります。)
extern double Lots = 0.1; // ロット数 0.1=1万通貨
extern double OpenPrice = 79; // 約定価格(スタート価格
extern double PriceDiff = 0.5; // 価格の値幅(スタート価格から刻みアップ
extern int STOPonlySW = 0; // 【-1=LIMITオンリー 0=通常 1=STOPオンリー】
extern int Positions = 3; // 注文の個数
extern double CloseDiff = 200.0; // 買い決済の値幅 決済出来ない値にしてます
extern double Lots_S = 0.01; // 売りのロット数 0.01=1000通貨
extern double OpenPrice_S = 79; // 約定価格(スタート価格
extern double PriceDiff_S = 0.1; // 価格の値幅(スタート価格から刻みアップ
extern int STOPonlySW_S = 1; // 【-1=LIMITオンリー 0=通常 1=STOPオンリー】
extern int Positions_S = 80; // 注文の個数
extern double CloseDiff_S = -0.1; // 売り決済の値幅 -0.1マイナス表記
クリックすると別ファイルが開きます。最後の強烈なドロ-ダウンは低価格時の売り残りですので、普段は無害です。(手動で強制決済を行った時瞬間的にこのドローダウンが起きます。)テスト結果:
開始金額 1000$
期間 2010/09/16〜2010/11/22
決済回数 855
総利益 1298.83$(この短期間での利益率で考えうるとすごい利益率です。)
MAXドローダウン 572.75 (32.42%) (ドローダウン的にも余裕綽々です。これがくるくるワイドの強みですね。)
相対ドローダウン 32.42% (572.75)
では、改装したスーパー1もバックテストです。
// 外部パラメータ
extern double TrailingStop = 0;// 500=50銭 //トレーリングpips【 0=トレーリングSW OFF】
extern double TrailingStop_S = 0;// 500=50銭 //トレーリングpips【 0=トレーリングSW OFF】
(上記のパラメータは通常口座では50=50銭と成ります。)
extern int MA1 = 6;// //トレーリング以外の決済短期移動平均の期間【 0= OFF】
extern int MA2 = 24;// //トレーリング以外の決済長期移動平均の期間【 0= OFF】
extern double MA_Close = 0; // トレーリング以外の決済時に倍率以上値なら買い決済【 0= OFF】
extern double MA_Close_S = 2.0;// トレーリング以外の決済時に倍率以上値なら売り決済【 0= OFF】
extern int Slippage = 30; //スリッページpips
(上記のパラメータは通常口座では3=3pipsと成ります。)
extern double Lots = 0.1; // ロット数 0.1=1万通貨
extern double OpenPrice = 79; // 約定価格(スタート価格
extern double PriceDiff = 0.5; // 価格の値幅(スタート価格から刻みアップ
extern int STOPonlySW = 0; // 【-1=LIMITオンリー 0=通常 1=STOPオンリー】
extern int Positions = 3; // 注文の個数
extern double CloseDiff = 200.0; // 買い決済の値幅 決済出来ない値にしてます
extern double Lots_S = 0.01; // 売りのロット数 0.01=1000通貨
extern double OpenPrice_S = 79; // 約定価格(スタート価格
extern double PriceDiff_S = 0.1; // 価格の値幅(スタート価格から刻みアップ
extern int STOPonlySW_S = 1; // 【-1=LIMITオンリー 0=通常 1=STOPオンリー】
extern int Positions_S = 80; // 注文の個数
extern double CloseDiff_S = -0.1; // 売り決済の値幅 -0.1マイナス表記
extern double SecondDiff_S = -0.05; // トレール時の最低利確決定と第2軍の発動
クリックすると別ファイルが開きます。最後の強烈なドロ-ダウンは低価格時の売り残りですので、普段は無害です。(手動で強制決済を行った時瞬間的にこのドローダウンが起きます。)テスト結果:
開始金額 1000$
期間 2010/09/16〜2010/11/22
決済回数 546
総利益 1220.18$
MAXドローダウン 564.58$ (33.26%)
相対ドローダウン 33.26% (564.58$)
ノーマルと比べて大差無いですね。むしろ少ない。。。
やはり決済回数少なくなりました。トレールの方が利益確保の機械損失が大きいですね。今、パソコン様にトレーリング幅とか補助利確用MA値とか利確倍率とか第2軍の発動ポイントとか探ってもらっていますので、明日には結果がでます。
途中経過からみても、たぶん、期待は薄いでしょうが、
少ない決済回数でも同額という事が、トレールの効果という事でしょう。