externdouble Dist = 25; //--- the distance you'd like your stops to trail.. in your case 25 pipsexternint EA_Majik = 12345; //--- EA's magic number
start()
{
//.......double min=NormalizeDouble(MarketInfo(Symbol(),MODE_STOPLEVEL)*Point,Digits);
for(i=OrdersTotal()-1;i>=0;i--)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderMagicNumber()==EA_Majik && OrderSymbol()==Symbol())
{
if(OrderStopLoss() > 0) //--- Must have an existing stoploss to trail
{
if(OrderType()==OP_BUY)
{
if(Bid-OrderOpenPrice() < 100) //--- only trail if price moves within 100 pips
{
double LastSL.Lng = OrderStopLoss(); //--- get the current SL leveldouble SL.Lng = NormalizeDouble(Bid-Dist*Point,Digits); //--- get the new SL levelif(SL.Lng < LastSL.Lng) SL.Lng = LastSL.Lng; //--- never move SL away from price.. if this is the case, keep it the sameif(SL.Lng > Bid-min) {Print("STOPLOSS too close to market: ",SL.Lng,", Adjusted to min: ",(Bid-min)); SL.Lng=Bid-min;}
if(SL.Lng != LastSL.Lng) OrderModify(OrderTicket(),OrderOpenPrice(),SL.Lng,OrderTakeProfit(),0,Lime);
}
}
if(OrderType()==OP_SELL)
{
if(OrderOpenPrice()-Ask < 100)
{
double LastSL.Shrt = OrderStopLoss();
double SL.Shrt = NormalizeDouble(Ask+Dist*Point,Digits);
if(SL.Shrt > LastSL.Shrt) SL.Shrt = LastSL.Shrt;
if(SL.Shrt < Ask+min) {Print("STOPLOSS too close to market: ",SL.Shrt,", Adjusted to min: ",(Ask+min)); SL.Shrt=Ask+min;}
if(SL.Shrt != LastSL.Shrt) OrderModify(OrderTicket(),OrderOpenPrice(),SL.Shrt,OrderTakeProfit(),0,Red);
}
}
}
}
elsePrint("STOPLOSS does not exist.");
}
// .........return(0);
}
ということは、MoveTrailingStop()関数の中で実際のチェックをするのですか?
でも、関数 自体はウェブ上の別のEAからハックしたのですが、今は何をやっているのか理解しています。でも、機能自体はウェブ上の別のEAからハックしたのですが、今は何をやっているのか理解しています。
私がしていることのほとんどは、彼らがどのように動作するかを見るためにコピーして見ています。私がやっていることのほとんどは、関数がどのように動作するかを見るためのコピーと観察です。このトピックは本当に良い本が必要ですね。
トレーリングストップの例をたくさん集めましたが、-ve値から0まですぐにトレールし始め、その後ブレイクイーブンのように停止するものが必要です。
例えば、エントリー価格が100でストップロスが100の場合、価格が+25まで動くとトレーリングストップは-75まで動き、価格が100に達するとトレーリングストップは0に止まり、それ以上動きません。
誰かこの件で助けてくれませんか?一日中この方法を試しましたが、どうしてもうまくいきません。
私はそれをやったと思ったが、私はやっていない、私のトレーリングストップは0を通って続く。
上記のコードは、あなたが説明したことを行う必要があります。私はポストに入れただけで、テストはしていませんので、もし問題があれば教えてください。
さて、お聞きしたいのですが、以前投稿されたコードでは、エントリーシグナルにこのようなものがありましたね。
あなたのストラテジーでは、エントリーシグナルはこれだけなのでしょうか?
上記のコードはあなたが説明したことを行う必要があります。ただ、ポストに入れただけで、テストはしていませんので、もし問題があれば教えてください。
さて、お聞きしたいのですが、以前投稿されたコードでは、エントリーシグナルにこのようなものがありましたね。
あなたのストラテジーのエントリーシグナルはこれだけなのでしょうか?
いいえ、そうではありません。ここの誰かが、私が何をしているかを明らかにする時が来るまで、当分の間、エントリーシグナルを変更するようにと助言してくれました。基本的なEAから、スペースを埋めるために選びました。
ありがとうございました。
ふかく考えて
こんにちは、皆さん...。
私は純粋に比較のためにこれを投稿しています。
この投稿では取引回数が表示されていますが、ミックさんの投稿では削除されています。 なぜでしょうか?
この投稿の第二の理由は、驚くべき結果が短時間で可能であることを示すことです - これはデモ口座 で2時間以内に行われた一連の取引です。
コードを掲載したいのですが、本当に私の最高の仕事ではありません。 実は、これはとんでもなく愚かなプログラミングの見落としのために起こったことなのです。
Sn
why dont you just ask me in a pm or do you want to have a go at me now publicly ? ? ? ? ?
損切りのないトレードで、数時間でそれだけの利益を達成したのですか?もし、あなたがそのようにうまく取引していたなら、インターネットフォーラムで時間を無駄にすることはないでしょう。この結果は、バックテスターを使用したものか、あなたが作り上げたものか、どちらかです。
前にも言ったように、このスレッドに建設的なことを投稿できないのであれば、投稿しないでください。あなたがどこから来たにせよ、離れて戻ってください。
実は、私はこのフォーラムへのアプローチでミスを犯しました、私はここでこのスレッドでの活動を終了し、それに戻ることはありません。そのかわり、このフォーラムの他の投稿を勉強し始め、そこから手をつけていくつもりです。このスレッドで積極的なご意見をいただき、ありがとうございました。
ここにいらっしゃる経験豊富な方々のご意見を伺いたいと思っています。簡単なEAをプログラムし、デモ口座 で素晴らしい結果を出しているようです。
==>> 私もシンプルなEAをプログラムし、素晴らしい結果を得ました。私がしたように、あなたが何かを見過ごす可能性についてあなたの質問に答えるために、あなたと同じようにここに投稿しています。 私の取引戦略は制御不能で、ただ適切なタイミングでマーケットにヒットしただけです。
私が質問している理由は、あまりにもうまくいっているように見えるので、何か見落としているのではと心配になったからです。
==>> 上記の私の経験から可能性はあります。
これが私がすべき投稿だったと思います - ミックさんごめんなさい。