MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1577 1...157015711572157315741575157615771578157915801581158215831584...1953 新しいコメント Tretyakov Rostyslav 2021.08.07 13:29 #15761 Mihail Matkovskij:OnTradeTransactionは、サーバー上の任意のストップオーダーがトリガーされたときにトリガーされます。 しかし、その機能は規定されていなければならないのですか? Tretyakov Rostyslav 2021.08.07 13:32 #15762 Eugen8519: スルーはどうですか? deal_reason_sl DEAL_REASON_TP ノー ドキュメントにOnTradeTransactionの 非常に良い例があります。 Mihail Matkovskij 2021.08.07 13:34 #15763 MakarFX: しかし、その機能は規定されていなければならないのですか? 専用に 機能を追加していただければ、便利だと思います。なぜダメなのか...? しかし、サーバーがそれを行い、OnTradeTransactionに 信号を送信するので、その中でストップクロスを追跡する必要はありません。 Tretyakov Rostyslav 2021.08.07 13:44 #15764 Mihail Matkovskij:専用に 機能を追加していただければ、便利だと思います。なぜダメなのか...?しかし、その中でストップの交差をトレースする必要はありません。なぜなら、それはサーバーによって行われ、OnTradeTransactionに シグナルが送られるからです。 ミーシャ、私はmql5があまり得意ではなく、まだ最初の方です。 というようなことをまず書くべきだと思うのですが、いかがでしょうか。 if(OnTradeTransaction(...)==....) SendNotification ("текст"); 間違っていたら、訂正していただけると幸いです Mihail Matkovskij 2021.08.07 13:49 #15765 MakarFX:ミーシャ、私はmql5が苦手で、まだ始めたばかりなんです。というようなことをまず書くべきだと思うのですが...。 間違っていたら、訂正していただけるとうれしいです。OnTradeTransactionはそのようなイベントハンドラ です。したがって、すべての処理コードがその中にあるはずです。必要であれば処理関数を呼び出すこともできます。リンク先のドキュメントにある説明をご覧ください。 Tretyakov Rostyslav 2021.08.07 13:57 #15766 Mihail Matkovskij: OnTradeTransactionはそのようなイベントハンドラ です。したがって、すべての処理コードがその中にあるはず です。必要なら加工機能も。リンク先のドキュメントに記載されている説明をご覧ください。 同じことを言ってるのか? if(OnTradeTransaction(...)==....) SendNotification ("текст"); Eugen8519 2021.08.07 13:58 #15767 mql4で見つけたと思うのですが、いかがでしょうか? void AlertOrder() { string txt; double OCP; int i=OrdersHistoryTotal()-1; if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==true) { OCP=OrderClosePrice(); if (OCP==OrderStopLoss()) txt="SL"; if (OCP==OrderTakeProfit()) txt="TP"; } SendNotification(Symbol() + " hit "+txt+""); } Tretyakov Rostyslav 2021.08.07 14:00 #15768 Eugen8519: mql4で見つけたものですが、こんなのはどうでしょう? OrdersHistoryTotal mql5ではありません Mihail Matkovskij 2021.08.07 14:02 #15769 MakarFX:同じことを言ってるのか? いいえ、条件(if)の中でハンドラを呼び出すことになります。でも、どこにもかけなくていいんです。OnTradeTransactionに 処理コードを書くだけで、それだけでOKです。ストップがトリガーされたときにOnTradeTransaction に渡されるパラメータを見ます。 イベントやイベントハンドラとは何か、MQLにどんなイベントがあるのかを知っておく必要がありますが。そうすれば、すべてが理解できるようになります。 イベントハンドラとは 何かについては、こちら(https://www.mql5.com/ru/docs/basis/function/events#ontradetransaction)をご覧ください。 混乱を避けるため、単にイベントハンドラと 呼ばれることが多い。例えば、OnTradeTransaction を if で呼び出される普通の関数と 混同しているように。 Документация по MQL5: Основы языка / Функции / Функции обработки событий www.mql5.com Функции обработки событий - Функции - Основы языка - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Tretyakov Rostyslav 2021.08.07 14:35 #15770 Eugen8519: mql4で見つけたものですが、こんなのはどうでしょう? これを試してみてください(テストはしていません) datetime lastclouse; int OnInit() { lastclouse=TimeCurrent(); ..... } void OnTick() { if(LastClouseProfit()!=EMPTY_VALUE) SendNotification (LastClouseProfit()); ..... } double LastClouseProfit() { ulong ticket=0; double profit=EMPTY_VALUE; HistorySelect(lastclouse,TimeCurrent()); ticket=HistoryDealGetTicket(); profit=HistoryDealGetDouble(ticket,DEAL_PROFIT); if(profit!=EMPTY_VALUE) lastclouse=TimeCurrent(); return(profit); } 1...157015711572157315741575157615771578157915801581158215831584...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
OnTradeTransactionは、サーバー上の任意のストップオーダーがトリガーされたときにトリガーされます。
スルーはどうですか?
ノー
ドキュメントにOnTradeTransactionの 非常に良い例があります。
しかし、その機能は規定されていなければならないのですか?
専用に 機能を追加していただければ、便利だと思います。なぜダメなのか...?
しかし、サーバーがそれを行い、OnTradeTransactionに 信号を送信するので、その中でストップクロスを追跡する必要はありません。
専用に 機能を追加していただければ、便利だと思います。なぜダメなのか...?
しかし、その中でストップの交差をトレースする必要はありません。なぜなら、それはサーバーによって行われ、OnTradeTransactionに シグナルが送られるからです。
ミーシャ、私はmql5があまり得意ではなく、まだ最初の方です。
というようなことをまず書くべきだと思うのですが、いかがでしょうか。
間違っていたら、訂正していただけると幸いです
ミーシャ、私はmql5が苦手で、まだ始めたばかりなんです。
というようなことをまず書くべきだと思うのですが...。
間違っていたら、訂正していただけるとうれしいです。
OnTradeTransactionはそのようなイベントハンドラ です。したがって、すべての処理コードがその中にあるはず です。必要なら加工機能も。リンク先のドキュメントに記載されている説明をご覧ください。
同じことを言ってるのか?
mql4で見つけたものですが、こんなのはどうでしょう?
mql5ではありません
同じことを言ってるのか?
いいえ、条件(if)の中でハンドラを呼び出すことになります。でも、どこにもかけなくていいんです。OnTradeTransactionに 処理コードを書くだけで、それだけでOKです。ストップがトリガーされたときにOnTradeTransaction に渡されるパラメータを見ます。
イベントやイベントハンドラとは何か、MQLにどんなイベントがあるのかを知っておく必要がありますが。そうすれば、すべてが理解できるようになります。
イベントハンドラとは 何かについては、こちら(https://www.mql5.com/ru/docs/basis/function/events#ontradetransaction)をご覧ください。
混乱を避けるため、単にイベントハンドラと 呼ばれることが多い。例えば、OnTradeTransaction を if で呼び出される普通の関数と 混同しているように。
mql4で見つけたものですが、こんなのはどうでしょう?
これを試してみてください(テストはしていません)