超簡単トレーリングストップ導入方法

スポンサーリンク

お久しぶりです。キリンです。
MT4以外のことをやっていると書いていましたが、
少しMT4に触りだしたので再開します・・・><
行き詰っている感があるので、今が踏ん張りどころです。多分^^;
この前に、junkyさんからトレーリングストップについて聞きたいというコメントをいただいたので、
トレーリングストップの超簡単導入方法をご紹介しましょう。
同じマジックナンバーで単一ポジションしか取らないトレーリングストップであれば、
豊嶋先生の本の中で紹介されているトレーリングストップのページ(p.331)で事足ります。
(説明は本の中でされているので、僕がここで説明してできません。
 ぜひ、購入して読んでみて下さいねっ★)
FXメタトレーダー実践プログラミング (現代の錬金術師シリーズ)/豊嶋久道

¥2,940
Amazon.co.jp
僕はこれをライブラリーに放り込んで使っています。
使い方ですが、下のサブルーチンを追加して、
tspipsにトレール間隔を指定、magicにマジックナンバーを放り込めば終了です。
とっても簡単。
豊嶋先生に感謝です・・・。
junkyさんは何を求めていらしたんでしょうか@@
よろしければコメントいただければと・・・。
個人的感覚ですが、僕はトレーリングストップに関しては否定的です。
導入してよくなった試しがないからです。
一番良い決済方法は指値決済だと思っています。
ご参考になれば幸いです・・・。

//通常のトレイリングストップvoid MyTrailingStop(int tspips, int magic){   if(Digits == 3 || Digits == 5) tspips *= 10;      for(int i=0; i < OrdersTotal(); i++)   {      if(OrderSelect(i, SELECT_BY_POS) == false) break;      if(OrderSymbol() != Symbol() || OrderMagicNumber() != magic) continue;            if(OrderType() == OP_BUY)      {         double news1 = BID - tspips * Point;                  if(news1 >= OrderOpenPrice() && news1 > OrderStopLoss()) FTLOrderModify(news1, 0, magic);                  break;      }            if(OrderType() == OP_SELL)      {         news1 = ASK + tspips * Point;                  if(news1 <= OrderOpenPrice() && news1 < OrderStopLoss()) FTLOrderModify(news1, 0, magic);                  break;      }   }}

今日もお読みくださり、ありがとうございます^^

コメント

  1. junky より:

    SECRET: 0
    PASS:
    例のブレイクアウトに1行のフィルターを加えて検証してるんですが、これにトレイリングストップを加えれば損小利大になるのではと、単純に考えたもので・・・
    理想は2枚注文で、1枚だけトレイリングにするとかです。
    すみません、ちょっと忙しくてプログラムに触れていないもので・・・

  2. SECRET: 0
    PASS:
    >junkyさん
    それでしたら、マジックナンバーを分けて同時に注文を行い、片方だけ今回の記事で紹介したサブルーチンを適応させれば可能ですよ^^

タイトルとURLをコピーしました