MT5でOrderSendを正しく動作させる方法 - ページ 6 12345678910111213 新しいコメント fxsaber 2016.10.17 16:48 #51 Alexey Viktorov:最初のEAは、OrderSendの 後、まだ履歴が同期されていないことに気づきます。彼はただ、シンクロという事象を待っている。しかし、2つ目のExpert Advisorは、履歴が同期しているかどうかをどのように理解するのでしょうか。 Alexey Viktorov 2016.10.17 17:31 #52 fxsaber: 最初のEAは、OrderSendの後、まだ履歴が同期されていないことに気づきます。彼はただ、シンクロという事象を待っている。しかし、2つ目のExpert Advisorは、履歴が同期しているかどうかをどのように理解するのでしょうか。歴史は忘れてください。関数OnTradeTransaction() の動作を研究してみてください。 最初のExpert Advisorがポジションを置き、このイベントはOnTradeTransactionで処理され、そこで間違った注文が有効になります...このイベントは OnTradeTransaction でも処理される。また、2つ目のExpert Advisorは、自分以外の注文、ポジション、取引をふるい落とします。 私は2つのEAを実際の口座で動作させています。そのうちのひとつは、ポジションマジシャンが、チケットをあるべきポジションに割り当てるというものです。そして、あなた自身も、彼らが2つの異なるマジシャンではないことを理解している......。あなたの名前はビクターだと思うのですが?デバッグで異なる魔導師で2つのポジションを設定し始め、OnTradeTransactionでその構造をトレースします。 prostotrader 2016.10.17 18:59 #53 Alexey Viktorov:歴史は忘れてください。OnTradeTransaction()関数の 動作を研究してみてください。 最初のExpert Advisorがポジションを置き、OnTradeTransactionがこのイベントを処理し、「自分のものではない」がそこにふるい落とされ、注文が活性化される...。OnTradeTransaction はこのイベントも処理する。また、2つ目のExpert Advisorは、自分以外の注文、ポジション、取引をふるい落とします。 私は2つのEAを実際の口座で動作させています。そのうちのひとつは、ポジションマジシャンが、チケットをあるべきポジションに割り当てるというものです。そして、あなた自身も、彼らが2つの異なるマジシャンではないことを理解している......。あなたの名前はビクターだと思うのですが?デバッグで異なる魔導師で2つのポジションを設定し始め、OnTradeTransactionでその構造をトレースします。私の過去ログをよく見てみるとチケットはOnTradeTransactionが発生するよりも早く受け取れるので注文書で十分です。もちろん、(この場合は)Magicianを使った方が良いのですが。そして、(より良い)OrderSendAsyncを使用してください - FOREXでもFORTSでも、エラーはありません。 Alexey Viktorov 2016.10.17 19:31 #54 prostotrader:私の過去ログをよく見てみるとチケットの受け取りがOnTradeTransactionより早いので注文書で十分です。もちろん、(この場合は)Magicianを使った方が良いのでしょうけど。そして、(今のところ)OrderSendAsyncを使用する方が良い。FOREXでもFORTSでも、エラーはない。もしかしたら、そうかもしれませんね。しかし、保留中の注文が有効化された場合はどうでしょうか?歴史を分析すべきなのか?また、環境の同期速度に問題があるのでは? すべてにおいて、アマチュアのためのゲームである。要は、あまりスピードを落とさずに、うまくやること、そして、避けること...。 fxsaber 2016.10.17 19:48 #55 Alexey Viktorov:歴史は忘れてください。OnTradeTransaction()の挙動を勉強してみる。2つ目は、非同期履歴の時にどのように動作するのでしょうか?この問題は、MT5だけでなく、4倍にも影響します。 Alexey Viktorov 2016.10.17 21:29 #56 fxsaber:非同期履歴中の2つ目の動作はどうなっていますか?この問題は、MT5だけでなく、4倍速にも影響します。あなたの名前がビクターであることは、ますます確実になってきました。あなたの過去のニックネームは内緒です。短期間で平均以上のレベルでプログラミングをマスターされたと思いますが、私の中では平均以上です。しかし、誤った立場からあなたを動かすのは非常に難しい。そして今、あなたのプログラミング知識のレベルは私よりも高いので、私は挑戦するつもりもありません。 履歴は忘れて、OnTradeTransaction関数の 構造をご覧ください。mql5で保留中の注文が有効であることをどのように判断しているのか、言葉で説明してみてください。 Renat Fatkhullin 2016.10.17 23:47 #57 Alexey Viktorov:あなたの名前がビクターであることは、ますます確実になってきました。あなたの昔のあだ名は誰にも言いませんよ。短期間でプログラミングをマスターして...。 実は、これもhrenfxの生まれ変わりなんです。新しい方法で来ることにした。 削除済み 2016.10.22 11:00 #58 prostotrader:私の過去ログをよく見てみるとチケットの受け取りがOnTradeTransactionより早いので注文書で十分です。もちろん、(この場合は)Magicianを使った方が良いのでしょうけど。そして、(今のところ)OrderSendAsyncを使用する方が良い。FOREXでもFORTSでも、エラーはない。 また、OrderSendAsync()の 利点は何でしょうか?リザルトで反応を待つことはありません。後で捕捉しなければならないということです。何がメリットなのか、はっきりしない。 削除済み 2016.10.22 11:03 #59 prostotrader:OrderSend()は完全な同期関数で、チケットを受信すればすべてが実行されます。以下はその例です。追加され、以下はそのログです。https://www.mql5.com/ru/forum/38456/page85#comment_2888263 ありがとうございました。 fxsaber 2016.11.10 09:00 #60 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム シンボルでポジションを開かずに手数料を知るにはどうしたらいいですか? fxsaber さん 2016.11.08 20:30#include <MT4Orders.mqh>void OnStart(){ const int Ticket = OrderSend(_Symbol, OP_BUY, 1, SymbolInfoDouble(_Symbol, SYMBOL_ASK), 0, 0, 0); OrderClose(Ticket, 0.3, SymbolInfoDouble(_Symbol, SYMBOL_BID), 0, clrNONE); Sleep(1000); // ждем обновления истории if (OrderSelect(Ticket, SELECT_BY_TICKET)) Alert(OrderCommission());}この例は、説明のためだと思います。Sleepを行わないと、OrderClose後に履歴が更新されず、OrderCommissionはOrderCloseが行われなかったかのような値を返すという事態がよく発生します。これはスクリプトであり、Event-overはありえないことに注意してください。逃げ道は馬鹿なスリープしかない。このスクリプトをSBで書き換えても、何も変わりません。 MetaEditor ビルド1463 How to work correctly 成行注文を正しく発注するにはどうしたらよいですか? 12345678910111213 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
最初のEAは、OrderSendの 後、まだ履歴が同期されていないことに気づきます。彼はただ、シンクロという事象を待っている。
しかし、2つ目のExpert Advisorは、履歴が同期しているかどうかをどのように理解するのでしょうか。
最初のEAは、OrderSendの後、まだ履歴が同期されていないことに気づきます。彼はただ、シンクロという事象を待っている。
しかし、2つ目のExpert Advisorは、履歴が同期しているかどうかをどのように理解するのでしょうか。
歴史は忘れてください。関数OnTradeTransaction() の動作を研究してみてください。
最初のExpert Advisorがポジションを置き、このイベントはOnTradeTransactionで処理され、そこで間違った注文が有効になります...このイベントは OnTradeTransaction でも処理される。
また、2つ目のExpert Advisorは、自分以外の注文、ポジション、取引をふるい落とします。
私は2つのEAを実際の口座で動作させています。そのうちのひとつは、ポジションマジシャンが、チケットをあるべきポジションに割り当てるというものです。そして、あなた自身も、彼らが2つの異なるマジシャンではないことを理解している......。
あなたの名前はビクターだと思うのですが?デバッグで異なる魔導師で2つのポジションを設定し始め、OnTradeTransactionでその構造をトレースします。
歴史は忘れてください。OnTradeTransaction()関数の 動作を研究してみてください。
最初のExpert Advisorがポジションを置き、OnTradeTransactionがこのイベントを処理し、「自分のものではない」がそこにふるい落とされ、注文が活性化される...。OnTradeTransaction はこのイベントも処理する。
また、2つ目のExpert Advisorは、自分以外の注文、ポジション、取引をふるい落とします。
私は2つのEAを実際の口座で動作させています。そのうちのひとつは、ポジションマジシャンが、チケットをあるべきポジションに割り当てるというものです。そして、あなた自身も、彼らが2つの異なるマジシャンではないことを理解している......。
あなたの名前はビクターだと思うのですが?デバッグで異なる魔導師で2つのポジションを設定し始め、OnTradeTransactionでその構造をトレースします。
私の過去ログをよく見てみると
チケットはOnTradeTransactionが発生するよりも早く受け取れるので
注文書で十分です。
もちろん、(この場合は)Magicianを使った方が良いのですが。
そして、(より良い)OrderSendAsyncを使用してください - FOREXでもFORTSでも、エラーはありません。
私の過去ログをよく見てみると
チケットの受け取りがOnTradeTransactionより早いので
注文書で十分です。
もちろん、(この場合は)Magicianを使った方が良いのでしょうけど。
そして、(今のところ)OrderSendAsyncを使用する方が良い。FOREXでもFORTSでも、エラーはない。
もしかしたら、そうかもしれませんね。しかし、保留中の注文が有効化された場合はどうでしょうか?歴史を分析すべきなのか?また、環境の同期速度に問題があるのでは?
すべてにおいて、アマチュアのためのゲームである。要は、あまりスピードを落とさずに、うまくやること、そして、避けること...。
歴史は忘れてください。OnTradeTransaction()の挙動を勉強してみる。
2つ目は、非同期履歴の時にどのように動作するのでしょうか?
この問題は、MT5だけでなく、4倍にも影響します。
非同期履歴中の2つ目の動作はどうなっていますか?
この問題は、MT5だけでなく、4倍速にも影響します。
あなたの名前がビクターであることは、ますます確実になってきました。あなたの過去のニックネームは内緒です。
短期間で平均以上のレベルでプログラミングをマスターされたと思いますが、私の中では平均以上です。しかし、誤った立場からあなたを動かすのは非常に難しい。そして今、あなたのプログラミング知識のレベルは私よりも高いので、私は挑戦するつもりもありません。
履歴は忘れて、OnTradeTransaction関数の 構造をご覧ください。
mql5で保留中の注文が有効であることをどのように判断しているのか、言葉で説明してみてください。
あなたの名前がビクターであることは、ますます確実になってきました。あなたの昔のあだ名は誰にも言いませんよ。
短期間でプログラミングをマスターして...。
私の過去ログをよく見てみると
チケットの受け取りがOnTradeTransactionより早いので
注文書で十分です。
もちろん、(この場合は)Magicianを使った方が良いのでしょうけど。
そして、(今のところ)OrderSendAsyncを使用する方が良い。FOREXでもFORTSでも、エラーはない。
OrderSend()は完全な同期関数で、チケットを受信すればすべてが実行されます。
以下はその例です。
追加され、以下はそのログです。
https://www.mql5.com/ru/forum/38456/page85#comment_2888263
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
シンボルでポジションを開かずに手数料を知るにはどうしたらいいですか?
fxsaber さん 2016.11.08 20:30
void OnStart()
{
const int Ticket = OrderSend(_Symbol, OP_BUY, 1, SymbolInfoDouble(_Symbol, SYMBOL_ASK), 0, 0, 0);
OrderClose(Ticket, 0.3, SymbolInfoDouble(_Symbol, SYMBOL_BID), 0, clrNONE);
Sleep(1000); // ждем обновления истории
if (OrderSelect(Ticket, SELECT_BY_TICKET))
Alert(OrderCommission());
}
この例は、説明のためだと思います。
Sleepを行わないと、OrderClose後に履歴が更新されず、OrderCommissionはOrderCloseが行われなかったかのような値を返すという事態がよく発生します。
これはスクリプトであり、Event-overはありえないことに注意してください。逃げ道は馬鹿なスリープしかない。
このスクリプトをSBで書き換えても、何も変わりません。