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

 

これはEAであり、インジケーターではありません、両方を混ぜるべきではありません。

 

こんにちは、皆さん。

これはEAであり、インジケータではありません。

実際、私はMACDインジケータから いくつかのコードを取得し、そこからEAを作りました。

ありがとうございます。

 

すでに持っているEAをいくつか見てみてください。コードを勉強して、ロジックの一部を理解できるかどうか試してみてください。プログラムの流れを声に出してみてください。とても役に立ちますよ。

グッドラック

ラックス

 

こんにちは、みなさん。

luxinterriorさん、返信ありがとうございます。

すでにお持ちのEAをいくつか見てみてください。コードを勉強して、ロジックの一部を理解できるかどうか試してみてください。プログラムの流れを声に出してみてください。それは多くの助けになりますグッドラック

私は7つのバッファを持っています...バッファ1からバッファ7まで...それぞれのバッファはMACD バーの値を保存します...EAは開きます

MACDが'u'の形になったら買い投稿。

その時の条件

if (MacdBuffer7>MacdBuffer5&&MacdBuffer5>MacdBuffer3&&MacdBuffer3>MacdBuffer1

&&MacdBuffer1<MacdBuffer2&&MacdBuffer2<MacdBuffer4&&MacdBuffer4<MacdBuffer6) [/CODE]

SELL post when the MACD become 'n' shape..

the condition when..

[CODE] if(MacdBuffer7<MacdBuffer5&&MacdBuffer5<MacdBuffer3&&MacdBuffer3<MacdBuffer1

&&MacdBuffer1>MacdBuffer2&&MacdBuffer2>MacdBuffer4&&MacdBuffer4>MacdBuffer6)

誰かがこの問題を解決する手助けをしてくれるといいのですが・・・ありがとうございます。

 

プログラムを強制的に計算させる方法はありますか?

今は次のティックを待っています。

6つのチャートを開いていて、同じインジケータが6つのチャート全てに表示されています。

一つのチャートがティックを受け取ると更新されますが、他のチャートは更新されないので、「古くなった」状態になっています。

ありがとうございます。

 
ティックに関係ない処理・計算だけをさせる簡単なセットアップをいくつか試しましたが、そうすると画面のリフレッシュの問題が出てくるので・・・・・。私はすべてを正常に戻した...そうすることの重要性は、その偉大ではなかった...おそらくMQL5で来る

:: インジケータはsleep()関数に対処できない。

:: dllを書き、ターミナルですべてのウィンドウを取得し、すべての子ウィンドウに "refresh screen/window" を実行/送信することは可能です。しかし、その場合、インジケータと一緒にdllファイルを他の人に送らなければなりません...再び...それは複雑になります...。

TheRumpledOne:
プログラムを強制的に計算させる方法はありますか?

今は次のティックを待っています。

私は6つのチャートを開いていて、同じインジケータが6つのチャート全てに表示されています。

一つのチャートがティックを受け取れば更新されますが、他のチャートは更新されないので「stale」になっています。

ありがとうございます。
 

こんにちは。

私は同じような状況を見ていて、この問題について考えています...プログラムの最後に「もし注文がなかったらもう一度実行する」というループをコーディングして、3、4回ループさせたらどうでしょう。

そうすれば、ミスオーダー(これはよくあることです)は必ず拾われるはずです。

以下のような感じでしょうか。

for (int k = OrdersTotal() ==0; k >=2; k++)

{

if ( ! OrderSelect ( k, SELECT_BY_POS, MODE_TRADES ))continue;

if (k > 2) break;

}

return(0);

}

まだ初心者なので、意味がわからなかったら理由を教えてください。

 

Luxさん、ajkさん、Raygunさん、Devil2000さん、IN10TIONさんへ

ヒントをありがとうございます。

私はそれらを試して、私は答えを思い付くことを願っています。

後ほど投稿します。

Big Be

 
amatrader:
こんにちは。

私は同じような状況を見ていて、この問題について考えています...プログラムの最後に「もし注文がなかったらもう一度実行する」というループをコーディングして、3、4回ループさせたらどうでしょう。

そうすれば、ミスオーダー(これはよくあることです)は必ず拾われるはずです。

こんな感じだと思うのですが・・・。

私はまだ初心者なので、もし意味が分からなかったら理由を説明してください。

おいおい、それはいいアイディアだ

時間をチェックして、X秒かX分経過したらループを抜けるようにすればいいんだ。

ありがとうございました。

P.S. これはEAのためのものではありません。私はEAをコーディングしません。

 
たとえ1.000.000回ループしても、他のすべてが停止して、そのループ以外は何も処理されません。

:: 1.000.000ループの中では、他の何かをチェックしたりコントロールしたりするのは無駄なことで、だからsleep()関数が 機能しないんだ。

TheRumpledOne:
おい、それはいいアイデアだ!

時間をチェックして、もしX秒かX分が経過していたら、ループを終了させることはできるけど。

ありがとうございます!

P.S. これはEA用ではありません。 私はEAをコーディングしません。