記事「取引トランザクション:リクエストとレスポンスの構造体、説明、ロギング」についてのディスカッション - ページ 4 123456789 新しいコメント Artyom Trishkin 2023.10.17 16:42 #31 MrBrooklin ポジションをクローズする 前に 停電があり、私のコンピュータの電源が切れたとします。また、この情報はどこかに保存さ れる のでしょうか? このような理解しがたい瞬間について、もう少し詳しく説明してもらえますか? よろしくお願いします。 データはサーバーに保存されます。ターミナルはそれを受信し、Expert Advisorはそれを使用します。 MrBrooklin 2023.10.17 16:48 #32 Artyom Trishkin #:データはサーバーに保存される。端末はそれらを受信し、Expert Advisor はそれらを使用する。 では、なぜ今日、EAが昨日オープンした 取引を見つけられなかったのか。以前は見つかったのに。これがそのコードだ: void OnTradeTransaction( const MqlTradeTransaction& trans, // 貿易取引の構造 const MqlTradeRequest& request, // リクエスト構造 const MqlTradeResult& result // 応答構造 ) { if(trans.type==TRADE_TRANSACTION_DEAL_ADD) { if(HistoryDealSelect(trans.deal) && HistoryDealGetInteger(trans.deal,DEAL_ENTRY)==DEAL_ENTRY_IN) { pos_ticket=trans.position; pos_open=trans.price; } } } ちょっとした追加です。ロールオーバーは何らかの形でオープントレードのチケットに影響を与えることができますか? よろしく、ウラジミール。 Artyom Trishkin 2023.10.17 17:00 #33 MrBrooklin #:それなら、なぜ今日エキスパート・アドバイザーが昨日オープンした 取引を見つけられなかったのかが不思議だ。以前は見つかったのに。これがそのコードだ:ちょっとした補足です。ロールオーバーは、未決済取引のチケットに何らかの影響を与えることができますか?よろしく、ウラジミール。 未決済ポジションのIDで、そのすべての取引と注文を見つけることができます。 Alexey Viktorov 2023.10.17 17:04 #34 MrBrooklin #:では、なぜ今日、エキスパート・アドバイザーが昨日の取引を見つけられなかった のか。以前は見つかったのに。これがそのコードだ:ちょっとした補足です。ロールオーバーは、未決済取引のチケットに何らかの影響を与えることができますか?よろしく、ウラジミール。 取引を行う際、サーバーは取引が行われたという「メッセージ」を端末に送信し、それを忘れる。サーバーは端末がそれを受け取ったかどうかを気にしません。そのため、端末の電源が切れている場合は、端末を閉じた瞬間から現在までの履歴を読むことによってのみ、取引の内容を知ることができます。 MrBrooklin 2023.10.17 17:09 #35 Alexey Viktorov #: そのため、取引の瞬間に端末の電源がオフになっている場合、端末を閉じた瞬間から現在までの履歴を読むことによってのみ、その取引について知ることができます。 ハイ、アレクセイ、取引の瞬間、つまりポジションをオープンした瞬間、エキスパートアドバイザーがオープンしたため、ターミナルのスイッチはオンになっています。 ありがとうございます。 MrBrooklin 2023.10.17 17:15 #36 Artyom Trishkin #:オープン・ポジションのIDから、すべての取引と注文を見つけることができます。 なるほど。ハンドブックをもっと勉強してみます。 それでは、ウラジミール。 Alexey Viktorov 2023.10.17 18:07 #37 MrBrooklin #:ハイ、アレクセイ、トレードの瞬間、つまりポジションオープンの瞬間、エキスパートアドバイザーがオープンしていたため、ターミナルはオンになっていました。ありがとうございます。 これを理解する方法 取引、自動取引システム、取引戦略のテストに関するフォーラム。 取引トランザクション。リクエストとレスポンスの構造、説明、ログ出力" MrBrooklin、2023.10.17 16:48 なぜ今日、Expert Advisorが昨日開いた取引を見つけられなかった のでしょうか?さっきは見つかったのに。これがそのコードです: void OnTradeTransaction( const MqlTradeTransaction& trans, // 貿易取引の構造 const MqlTradeRequest& request, // リクエスト構造 const MqlTradeResult& result // レスポンス構造 ) { if(trans.type==TRADE_TRANSACTION_DEAL_ADD) { if(HistoryDealSelect(trans.deal) && HistoryDealGetInteger(trans.deal,DEAL_ENTRY)==DEAL_ENTRY_IN) { pos_ticket=trans.position; pos_open=trans.price; } } } 少し補足します。ロールオーバーは、何らかの形で未決済取引のチケットに影響を与える、すなわち変更することができますか? よろしく、ウラジミール。 だから昨日、それはそれを見つけた。そして今日、列車はすでに出発している... もし昨日注文があり、保留中の注文があり、今日すでにポジションがあるのであれば、私が話しているように、その取引はターミナルがクローズされた瞬間にあったことになります... したがって、ポジションIDでそれを探してください。 MrBrooklin 2023.10.17 19:52 #38 Alexey Viktorov #: 従って、アルテムが言っているポジションIDで探す んだ。 アレクセイ、もう君に乗り換えたのかな?)) はい、ポジションIDについてはすでに理解して います。助けを借りながら、自分で考えてみます: long position_ID=HistoryDealGetInteger(deal_ticket,DEAL_POSITION_ID); ありがとう、ウラジミール。 MrBrooklin 2023.10.17 20:21 #39 MrBrooklin #:では、なぜ今日EAが昨日の取引を見つけられなかった のか? アレクセイ、私の考えを表現するのは難しいかもしれませんが、要するに次のようなことです:昨日EAはポジションをオープンしました。今日、アルゴリズムによれば、Expert Advisorは昨日オープンしたポジションを見て、ある操作を行うはずでした。しかし、私がまだ理解していない理由により、EAは昨日オープンしたポジションを見ず、それに応じて、何のアクションも起こしませんでした。私の考えをより明確に表現できたでしょうか? ありがとう、ウラジミール。 Alexey Viktorov 2023.10.17 21:40 #40 MrBrooklin #:アレクセイ、私の考えを表現するのは難しいかもしれないが、その本質は次のようなものだ:昨日、エキスパートアドバイザーはポジションを建てた。今日、アルゴリズムによれば、Expert Advisorは昨日オープンしたポジションを見て、ある操作を行うはずだった。しかし、私がまだ理解していない理由により、EAは昨日オープンしたポジションを見ず、それに応じて、何のアクションも起こしませんでした。私の考えをより明確に表現できたでしょうか?ありがとう、ウラジミール。 ヴォロディア、この声については何度も話したね。できる限り説明したし、君はすべてを理解しているようだった。 OnTradeTransaction関数はイベント処理関数です。取引は昨日起こったイベントです。OnTradeTransaction 関数は昨日は機能するはずですが、今日は機能しません。今日はこのトランザクションのイベントはありません。 123456789 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
このような理解しがたい瞬間について、もう少し詳しく説明してもらえますか?
よろしくお願いします。
データはサーバーに保存されます。ターミナルはそれを受信し、Expert Advisorはそれを使用します。
データはサーバーに保存される。端末はそれらを受信し、Expert Advisor はそれらを使用する。
では、なぜ今日、EAが昨日オープンした 取引を見つけられなかったのか。以前は見つかったのに。これがそのコードだ:
ちょっとした追加です。ロールオーバーは何らかの形でオープントレードのチケットに影響を与えることができますか?
よろしく、ウラジミール。
それなら、なぜ今日エキスパート・アドバイザーが昨日オープンした 取引を見つけられなかったのかが不思議だ。以前は見つかったのに。これがそのコードだ:
ちょっとした補足です。ロールオーバーは、未決済取引のチケットに何らかの影響を与えることができますか?
よろしく、ウラジミール。
未決済ポジションのIDで、そのすべての取引と注文を見つけることができます。
では、なぜ今日、エキスパート・アドバイザーが昨日の取引を見つけられなかった のか。以前は見つかったのに。これがそのコードだ:
ちょっとした補足です。ロールオーバーは、未決済取引のチケットに何らかの影響を与えることができますか?
よろしく、ウラジミール。
取引を行う際、サーバーは取引が行われたという「メッセージ」を端末に送信し、それを忘れる。サーバーは端末がそれを受け取ったかどうかを気にしません。そのため、端末の電源が切れている場合は、端末を閉じた瞬間から現在までの履歴を読むことによってのみ、取引の内容を知ることができます。
そのため、取引の瞬間に端末の電源がオフになっている場合、端末を閉じた瞬間から現在までの履歴を読むことによってのみ、その取引について知ることができます。
ハイ、アレクセイ、取引の瞬間、つまりポジションをオープンした瞬間、エキスパートアドバイザーがオープンしたため、ターミナルのスイッチはオンになっています。
ありがとうございます。
オープン・ポジションのIDから、すべての取引と注文を見つけることができます。
なるほど。ハンドブックをもっと勉強してみます。
それでは、ウラジミール。
ハイ、アレクセイ、トレードの瞬間、つまりポジションオープンの瞬間、エキスパートアドバイザーがオープンしていたため、ターミナルはオンになっていました。
ありがとうございます。
これを理解する方法
取引、自動取引システム、取引戦略のテストに関するフォーラム。
取引トランザクション。リクエストとレスポンスの構造、説明、ログ出力"
MrBrooklin、2023.10.17 16:48
なぜ今日、Expert Advisorが昨日開いた取引を見つけられなかった のでしょうか?さっきは見つかったのに。これがそのコードです:
少し補足します。ロールオーバーは、何らかの形で未決済取引のチケットに影響を与える、すなわち変更することができますか?
よろしく、ウラジミール。
だから昨日、それはそれを見つけた。そして今日、列車はすでに出発している...
もし昨日注文があり、保留中の注文があり、今日すでにポジションがあるのであれば、私が話しているように、その取引はターミナルがクローズされた瞬間にあったことになります... したがって、ポジションIDでそれを探してください。
従って、アルテムが言っているポジションIDで探す んだ。
アレクセイ、もう君に乗り換えたのかな?))
はい、ポジションIDについてはすでに理解して います。助けを借りながら、自分で考えてみます:
ありがとう、ウラジミール。
では、なぜ今日EAが昨日の取引を見つけられなかった のか?
アレクセイ、私の考えを表現するのは難しいかもしれませんが、要するに次のようなことです:昨日EAはポジションをオープンしました。今日、アルゴリズムによれば、Expert Advisorは昨日オープンしたポジションを見て、ある操作を行うはずでした。しかし、私がまだ理解していない理由により、EAは昨日オープンしたポジションを見ず、それに応じて、何のアクションも起こしませんでした。私の考えをより明確に表現できたでしょうか?
ありがとう、ウラジミール。
アレクセイ、私の考えを表現するのは難しいかもしれないが、その本質は次のようなものだ:昨日、エキスパートアドバイザーはポジションを建てた。今日、アルゴリズムによれば、Expert Advisorは昨日オープンしたポジションを見て、ある操作を行うはずだった。しかし、私がまだ理解していない理由により、EAは昨日オープンしたポジションを見ず、それに応じて、何のアクションも起こしませんでした。私の考えをより明確に表現できたでしょうか?
ありがとう、ウラジミール。
ヴォロディア、この声については何度も話したね。できる限り説明したし、君はすべてを理解しているようだった。
OnTradeTransaction関数はイベント処理関数です。取引は昨日起こったイベントです。OnTradeTransaction 関数は昨日は機能するはずですが、今日は機能しません。今日はこのトランザクションのイベントはありません。