コーディングの方法は? - ページ 48

 
MrPip:
他のEAでも使っていますが、正常に動作しています。

本日オープンではなく、本日クローズしたトレードをチェックします。

開始時の使用法は

if (LastTradeClosedToday()) return(0);

// 新規取引を開始するコードはこちら

//+------------------------------------------------------------------+

//| LastTradeClosedToday|(最後の取引終了日)。

//| 最後の取引が今日終了したかどうかを確認するために履歴をチェックします。

//+------------------------------------------------------------------+

bool LastTradeClosedToday()

{

int cnt, total;

bool Close;

total = HistoryTotal();

for (cnt = total - 1; cnt >= 0; cnt--)

{

OrderSelect (cnt, SELECT_BY_POS, MODE_HISTORY);

if(OrderSymbol()!=Symbol())継続。

if (OrderMagicNumber() != MagicNumber) continue; if (OrderMagicNumber() != MagicNumber) continue;

クローズド = false

if (OrderType() == OP_BUY)

{

if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))

{

クローズド = true。

}

cnt = 0;

}

if (OrderType() == OP_SELL)

{

if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))

{

クローズド = true。

cnt = 0;

}

}

return (Closed);

}

OK やってみます。ありがとうございます。

 

問題解決

こんにちは。

私のバグは自分で解決しました、愚かなミスを犯しました。このスレッドを読んでくださった皆様、ありがとうございました。

 

もう変換した?

Beno:
Pipsさんありがとうございます。

このインジケータをEAにすることは可能なのでしょうか。Benoさんがやろうとしているのでは?やったことのある方、できる方、このインジケータのEA版を投稿していただけると幸いです。よろしくお願いします。

インジケータを添付します。

 
makemo8:
このインジケータをEA化することは可能なのでしょうか。Benoさんがやろうとしているのでは?やったことのある方、できる方、このインジケータのEA版を投稿していただければ幸いです。多謝 インジケータを添付します。

おっと!EA化するインジケーターはMT4-LevelStop-Reverse-vB0-4.mq4 です。

ファイル:
 

こんにちは。

私はブレイクアウトを取引するEAを持っています。毎晩、次の日のブレイクアウトレベルの プリセットファイルをロードしなければなりません。

質問ですが、どうすればEAが自分でプリセットファイルを探すのではなく、自分で探すようになりますか?

例:プリセットファイルをFTPにアップロードし、EAはそのアドレスを知っていて、毎日22時にこのアドレスからプリセットファイルがロードされます。

このようなことは可能でしょうか?

ありがとうございます。

 

プログラミングに関する質問

早速ですが、いくつか質問があります。

1.15分足チャートでGBPUSDを取引しているとします。私のEAのstart()関数は、新しいバーが利用可能になったとき(15分ごと)だけ呼び出されるのでしょうか、それとも新しい気配値があるたびに(数秒ごとでもよい)呼び出されるのでしょうか?

2.ある特定の時間に、2つの注文を出したとします。1つは現在の価格より20ピップ上の買いストップ、もう1つは現在の価格より20ピップ下の売りストップです。価格が買いストップまで上昇した場合、買いストップ注文が トリガーされたことを確認したら、すぐに売りストップをキャンセルしたいと思います。同様に、価格が売り指値まで下がったら、売り指値がトリガーされたことを確認したらすぐに買い指値を取り消したいのです。

簡単にできる方法はありますか?売り注文をキャンセルする前に、買い注文がトリガーされたことを確認するにはどうすればよいですか?注文がトリガーされたことを知らせる何らかの注文コールバック機能がシステムにあるのでしょうか?それとも、start() 関数で毎クオートごとに未決済注文をチェックし続け、そのように検出する必要があるのでしょうか?

ありがとうございます。

 
westofpluto:
いくつか簡単な質問があります。

1.15分足チャートでGBPUSDを取引しているとします。私のEAのstart()関数は、新しいバーが利用可能になったとき(15分ごと)にのみ呼び出されるのでしょうか、それとも新しい気配値があるたびに(数秒ごとでもかまいません)呼び出されるのでしょうか?

2.ある特定の時間に、2つの注文を出したとします。1つは現在の価格より20ピップ上の買いストップ、もう1つは現在の価格より20ピップ下の売りストップです。価格が買いストップまで上昇した場合、買いストップ注文がトリガーされたことを確認したら、すぐに売りストップをキャンセルしたいと思います。同様に、価格が売り指値まで下がったら、売り指値がトリガーされたことを確認したらすぐに買い指値を取り消したいのです。

簡単にできる方法はありますか?売り注文をキャンセルする前に、買い注文がトリガーされたことを確認するにはどうすればよいですか?注文がトリガーされたことを知らせる何らかの注文コールバック機能がシステムにあるのでしょうか?それとも、start() 関数で気配値ごとに未決済注文をチェックし続け、そのように検出する必要があるのでしょうか。

ありがとうございます。

1.Start() 関数は、ティックごとに呼び出されます。

2.はい、可能です。 やり方は一つではありません。 買いストップと売りストップを設定してから OrderType( ) 関数を呼び出し、OP_BUY または OP_SELL を返したら OrderDelete( ) を使用して既存の保留中の注文を 削除することが可能です。

 

テスターでは動作しないので、ストラテジーテスターで 動作するのでしょうか?それともフォワードテストだけすればいいのでしょうか?

if (LastTradeOpenToday()) return ();

bool LastTradeOpenToday()

{

int cnt, total;

bool Opened;

total = HistoryTotal();

for (cnt = total - 1; cnt >= 0; cnt--)

{

OrderSelect (cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderSymbol()!=Symbol())継続。

if (OrderMagicNumber() != Magic_Number) continue; if (OrderMagicNumber() != Magic_Number) continue;

開封済み = false

if (OrderType() == OP_BUY)

{

if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent()))

{

開封済み = true

}

cnt = 0;

if (OrderType() == OP_SELL)

{

if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent()))

{

オープン = true。

}

cnt = 0;

}

}

return (Opened);

}
 

数学的微分

数学的微分・積分に基づいて新しい指標を導入する方法を教えてください。

微分・積分を使った指標を導入するための計算式を教えてください。

 

csvファイル

親愛なる友人たち

ctrl+s」ではなく、CSVファイルを保存してくれるインジケータが欲しいのですが。

ありがとうございます。