MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1552 1...154515461547154815491550155115521553155415551556155715581559...1953 新しいコメント законопослушный гражданин 2021.07.30 15:24 #15511 законопослушный гражданин:フクロウはアルゴリズムに従ってトレードを開始する必要があります。ストップしたら、次の取引はマーチンで、私が指定した倍率になるまで続けます(関数 -OrdersClose = ......;)。さらに、ターミナルと一緒にフクロウが無効になっている場合、別のフクロウで「自動取引」ボタンを押すだけで、次の取引はマーチンゲールによって増加した最後のロットではなく、開始ロットから開始されます。また、スケジュールを付けると良いのですが、このアイデアは今思いつきました。例えば、月曜日の10時からスタートロットで起動し、日中に何らかの結果が出たのでスイッチを切り、火曜日の朝10時に再び起動し、スタートロットでスタートさせるといった具合です。のすべてです。 この問題に最後まで取り組むには? Tretyakov Rostyslav 2021.07.30 16:22 #15512 законопослушный гражданин:この質問の真意は? 出れば いい、出れば いい。 が、消えてもまた同じ質問をされる。 законопослушный гражданин 2021.07.30 16:34 #15513 MakarFX:あなたが答えれば、あなたが答える。 が、消えてもまた同じ質問をされる。 グローバル変数の作成方法を教えていただいたので、試してみましたが、疑問があります。 私はまだこれが得意ではありません。私はすでにdatetime OpenTime;を持っています - 私はそれをdatetimeStart または追加で置き換えるべきですか? "そして、後に開閉注文がない場合 "開始 "Lots=Lot;"-どこを参照すればいいのか全く不明ですが? それから、梟のロジック、私が梟に求めるものを簡単に説明してほしいということでした。 シャットダウン時にロットを自動的にリセットする方法は、まだ回答されていません。 Tretyakov Rostyslav 2021.07.30 16:43 #15514 законопослушный гражданин:グローバル変数の作成方法を教えていただいたので、試してみましたが、疑問があります。 すでにdatetime OpenTime;がありますが、これをdatetimeStartに 置き換えるべきでしょうか、それとも追加すべきでしょうか?"そして、後に開閉注文がない場合 "開始 "Lots=Lot;"-どこを参照すればいいのか全く不明ですが?それから、フクロウに何を求めるのか、そのロジックを簡単に説明せよということでしたね。シャットダウン時に自動でロットをリセットさせる方法を質問しても、回答はありませんでした。 EAのロジックの説明を求めたのは、発生した問題ではなく、大まかな動作のことです 例えば シグナルがあれば、注文を出す。 注文が利益で終了したら、新しいシグナルを待つ 注文が損失で終了した場合、ロットを増やして新しいシグナルを待ちます。 私はあなたの戦略を必要としません、私はちょうどEAが何をすべきかを理解する必要があります。 Tretyakov Rostyslav 2021.07.30 16:49 #15515 законопослушный гражданин:グローバル変数の作成方法を教えていただいたので、試してみましたが、疑問があります。 すでにdatetime OpenTime;がありますが、これをdatetimeStartに 置き換えるべきでしょうか、それとも追加すべきでしょうか?"そして、後に開閉注文がない場合 "開始 "Lots=Lot;"-どこを参照すればいいのか全く不明ですが?それから、フクロウに何を求めるのか、そのロジックを簡単に説明せよということでしたね。シャットダウン時に自動的にロットリセットを行う方法についての質問に対する回答が得られないのですが。 ここでは手始めにその機能を紹介します。 //+----------------------------------------------------------------------------+ //| Размер лота/профита и время последней закрытой позиции | //| 1 - возвращает размер лота | //| 2 - возвращает размер профита с учетом комиссии и свопа | //| 3 - возвращает время закрытия ордера | //+----------------------------------------------------------------------------+ double GetInfoLastPos(int a=1) { datetime t=0; double result=0,l=0,p=0; int i=OrdersHistoryTotal(); for(int pos=0; pos<i; pos++) { if(OrderSelect(pos, SELECT_BY_POS, MODE_HISTORY)) { if((OrderSymbol()==_Symbol)&&(OrderMagicNumber()==Magic)) { if(OrderType()==OP_BUY || OrderType()==OP_SELL) { if(t<OrderCloseTime()) {t=OrderCloseTime(); l=OrderLots(); p=OrderProfit()+OrderCommission()+OrderSwap();} } } } } if(a==1) {result=l;} else if(a==2) {result=p;} else if(a==3) {result=(double)t;} else {result=0;} return(result); } 赤字になったら if(GetInfoLastPos(2)<0) {Lots=NormalizeDouble(GetInfoLastPos(1)*K_Martin,DigitsLot);} else {Lots=NormalizeDouble(Lot,DigitsLot);} Tretyakov Rostyslav 2021.07.30 17:00 #15516 について datetime Start; int OnInit() { Start=TimeCurrent(); ..................... } void OnTick() { if (!IsTradeAllowed()) { DrawLABEL("Торговля",0,0,0,Red,"Торговля запрещена"); Start=TimeCurrent(); return; } ..................... } 最後に閉じた注文の時刻がアドバイザーの開始時刻より短い場合 if(GetInfoLastPos(3)<Start) {Lots=NormalizeDouble(Lot,DigitsLot);} законопослушный гражданин 2021.07.30 17:11 #15517 MakarFX:EAのロジックの説明を求めたのは、発生した問題ではなく、一般的な動作についてです例えばシグナルがあれば、注文を出す。注文が利益で終了したら、新しいシグナルを待つ注文が損失で終了した場合、ロットを増やして新しいシグナルを待ちます。私はあなたの戦略を必要としません、私はちょうどEAが何をすべきかを理解する必要があります。 シグナルが発生したら、最初のロットで注文を出す。 注文が利益で終了した場合、新しいシグナルを待ちます。 注文が損失で終了した場合、ロットを増やして新しいシグナルを待ちます。 利益がxxxx(入金通貨)に達した場合、アドバイザーはすべての取引を終了し、ロットを最初のものにリセットします。 損失がyuu(預金の通貨で)に達した場合、アドバイザーはすべての取引を閉じ、 開始1 にロットをリセット します。 アドバイザーの電源を一度切ってから入れ直すと- シグナルがあれば、開始ロットで注文を出す。 だろう? Tretyakov Rostyslav 2021.07.30 17:27 #15518 законопослушный гражданин:シグナルがあれば、スタートロットで注文を開始します。注文が利益で終了した場合、新しいシグナルを待ちます。注文が損失で終了した場合、ロットを増やして新たなシグナルを待ちます。利益がxxxx(入金通貨)に達した場合、アドバイザーはすべての取引を終了し、ロットを最初のものにリセットします。損失がyuu(預金の通貨で)に達した場合、アドバイザーはすべての取引を閉じ、 開始1 にロットをリセット します。 アドバイザーの電源を一度切ってから入れ直すと- シグナルがあれば、開始ロットで注文を出す。このように? そう、このように。 EAを一度無効にし、再度有効にした場合、未決済の注文が ある場合はどうなりますか? законопослушный гражданин 2021.07.30 19:34 #15519 MakarFX:はい、そうです。EAをオフにしてからオンに戻すと、未決済注文が ある場合はどうなりますか? EAをオフにする場合、オフにする前に、利益が出ているか損失が出ているかにかかわらず、すべてのオープンオーダーをクローズします。 再びフクロウの電源を入れると、スタートロットである「空白のフィールド」が閉じられます。 開くための信号を与える指標は、例では、RSIだったが、私は別の指標に3つの異なるフクロウをテストすることを想定しています。 そこで、上記のロジックのサンプルコードがあれば、他のEAのコードを自分で手直しすることができるようになると思います。 Maxim Kuznetsov 2021.07.30 19:46 #15520 законопослушный гражданин:フクロウがオフにさ れた場合、オフにされる前に、利益または損失に関係なく、すべてのオープンオーダーをクローズします。オープンのシグナルを出すインジケータはRSIでしたが、クリアされたものと思われます。開くための信号を与える指標は、例では、RSIだったが、私は別の指標に3つの異なるフクロウをテストすることを想定しています。なので、上記のロジックのコード例があれば、他のEAのコードを自分で手直しできるようになるので、オープンソースで無料公開されるといいなぁと思います。 とか、owl.turns off when changing timeframeとか、通信障害とか、100500とか、もう一つ理由があるのですが・・・。 EAがリロードするのは自然の摂理です。 1...154515461547154815491550155115521553155415551556155715581559...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
フクロウはアルゴリズムに従ってトレードを開始する必要があります。
ストップしたら、次の取引はマーチンで、私が指定した倍率になるまで続けます(関数 -OrdersClose = ......;)。
さらに、ターミナルと一緒にフクロウが無効になっている場合、別のフクロウで「自動取引」ボタンを押すだけで、次の取引はマーチンゲールによって増加した最後のロットではなく、開始ロットから開始されます。
また、スケジュールを付けると良いのですが、このアイデアは今思いつきました。
例えば、月曜日の10時からスタートロットで起動し、日中に何らかの結果が出たのでスイッチを切り、火曜日の朝10時に再び起動し、スタートロットでスタートさせるといった具合です。
のすべてです。
この問題に最後まで取り組むには?
この質問の真意は?
出れば いい、出れば いい。
が、消えてもまた同じ質問をされる。
あなたが答えれば、あなたが答える。
が、消えてもまた同じ質問をされる。
グローバル変数の作成方法を教えていただいたので、試してみましたが、疑問があります。
私はまだこれが得意ではありません。私はすでにdatetime OpenTime;を持っています - 私はそれをdatetimeStart または追加で置き換えるべきですか?
"そして、後に開閉注文がない場合 "開始 "Lots=Lot;"-どこを参照すればいいのか全く不明ですが?
それから、梟のロジック、私が梟に求めるものを簡単に説明してほしいということでした。
シャットダウン時にロットを自動的にリセットする方法は、まだ回答されていません。
グローバル変数の作成方法を教えていただいたので、試してみましたが、疑問があります。
すでにdatetime OpenTime;がありますが、これをdatetimeStartに 置き換えるべきでしょうか、それとも追加すべきでしょうか?
"そして、後に開閉注文がない場合 "開始 "Lots=Lot;"-どこを参照すればいいのか全く不明ですが?
それから、フクロウに何を求めるのか、そのロジックを簡単に説明せよということでしたね。
シャットダウン時に自動でロットをリセットさせる方法を質問しても、回答はありませんでした。
EAのロジックの説明を求めたのは、発生した問題ではなく、大まかな動作のことです
例えば
シグナルがあれば、注文を出す。
注文が利益で終了したら、新しいシグナルを待つ
注文が損失で終了した場合、ロットを増やして新しいシグナルを待ちます。
私はあなたの戦略を必要としません、私はちょうどEAが何をすべきかを理解する必要があります。
グローバル変数の作成方法を教えていただいたので、試してみましたが、疑問があります。
すでにdatetime OpenTime;がありますが、これをdatetimeStartに 置き換えるべきでしょうか、それとも追加すべきでしょうか?
"そして、後に開閉注文がない場合 "開始 "Lots=Lot;"-どこを参照すればいいのか全く不明ですが?
それから、フクロウに何を求めるのか、そのロジックを簡単に説明せよということでしたね。
シャットダウン時に自動的にロットリセットを行う方法についての質問に対する回答が得られないのですが。
ここでは手始めにその機能を紹介します。
赤字になったら
について
最後に閉じた注文の時刻がアドバイザーの開始時刻より短い場合
EAのロジックの説明を求めたのは、発生した問題ではなく、一般的な動作についてです
例えば
シグナルがあれば、注文を出す。
注文が利益で終了したら、新しいシグナルを待つ
注文が損失で終了した場合、ロットを増やして新しいシグナルを待ちます。
私はあなたの戦略を必要としません、私はちょうどEAが何をすべきかを理解する必要があります。
シグナルが発生したら、最初のロットで注文を出す。
注文が利益で終了した場合、新しいシグナルを待ちます。
注文が損失で終了した場合、ロットを増やして新しいシグナルを待ちます。
利益がxxxx(入金通貨)に達した場合、アドバイザーはすべての取引を終了し、ロットを最初のものにリセットします。
損失がyuu(預金の通貨で)に達した場合、アドバイザーはすべての取引を閉じ、 開始1 にロットをリセット します。
アドバイザーの電源を一度切ってから入れ直すと- シグナルがあれば、開始ロットで注文を出す。
だろう?
シグナルがあれば、スタートロットで注文を開始します。
注文が利益で終了した場合、新しいシグナルを待ちます。
注文が損失で終了した場合、ロットを増やして新たなシグナルを待ちます。
利益がxxxx(入金通貨)に達した場合、アドバイザーはすべての取引を終了し、ロットを最初のものにリセットします。
損失がyuu(預金の通貨で)に達した場合、アドバイザーはすべての取引を閉じ、 開始1 にロットをリセット します。
アドバイザーの電源を一度切ってから入れ直すと- シグナルがあれば、開始ロットで注文を出す。
このように?
そう、このように。
EAを一度無効にし、再度有効にした場合、未決済の注文が ある場合はどうなりますか?
はい、そうです。
EAをオフにしてからオンに戻すと、未決済注文が ある場合はどうなりますか?
EAをオフにする場合、オフにする前に、利益が出ているか損失が出ているかにかかわらず、すべてのオープンオーダーをクローズします。
再びフクロウの電源を入れると、スタートロットである「空白のフィールド」が閉じられます。
開くための信号を与える指標は、例では、RSIだったが、私は別の指標に3つの異なるフクロウをテストすることを想定しています。
そこで、上記のロジックのサンプルコードがあれば、他のEAのコードを自分で手直しすることができるようになると思います。
フクロウがオフにさ れた場合、オフにされる前に、利益または損失に関係なく、すべてのオープンオーダーをクローズします。
オープンのシグナルを出すインジケータはRSIでしたが、クリアされたものと思われます。
開くための信号を与える指標は、例では、RSIだったが、私は別の指標に3つの異なるフクロウをテストすることを想定しています。
なので、上記のロジックのコード例があれば、他のEAのコードを自分で手直しできるようになるので、オープンソースで無料公開されるといいなぁと思います。
とか、owl.turns off when changing timeframeとか、通信障害とか、100500とか、もう一つ理由があるのですが・・・。
EAがリロードするのは自然の摂理です。