エラー、バグ、質問 - ページ 2766

 
Alexey Viktorov:

2つ目の質問は、「どのような形式で、どのように日を設定 するか」です。それとも、どの時間帯に設定されるかは関係ないのでしょうか?

MqlTradeRequest::expirationに ゼロタイムを設定する必要があります。

 
A100:

ORDER_TIME_SPECIFIEDと MqlTradeRequest::expirationを経由する。

もっと前にドキュメントを読むべきでしたね。

もう一度!ORDER_TIME_SPECIFIED 型には興味がなく、私が興味があるのは

注文時間指定日

ご注文の有効期限は、 指定 日の23:59:59までと なります。その時刻が取引時間帯に当てはまらない場合は、最も近い取引時間帯に満期を迎えます。

TF W1 で取引する場合、有効期限を金曜日に設定したいのですが。もちろん、金曜日までの時間を計算することもできますし、読むだけでなく、1000まで数えることもできます。でも、気になるのは私の質問。また、DAYを指定するためのフォーマットも知りたい。それとも、希望する日に当たれば、正確な時間帯を指定することは重要ではないのでしょうか?例えば金曜日の21:00に取引を終了し、月曜日に注文を開始した場合、注文はどうなりますか?最初の有効期限とアクティベーションのどちらを行うべきでしょうか。

 
A100:

ゼロタイムを設定する必要があります。

返信に時間がかかったメッセージを削除していただき、ありがとうございました。

本当にそうでしょうか?念のため、やっておこうと思います。でも、確かめたいんです。

 
Alexey Viktorov:

返信に時間がかかったメッセージを削除していただき、ありがとうございました。

本当にそうでしょうか?もちろん、用心のためにはやりますが。でも、確かめたいんです。

手動で日付(時間なし)付きの保留注文を行い、プログラムでそのtype_timeとexpirationの値を読み取る必要があります。

自分で発明したのではなく、そのようにした のです。

 
A100:

保留中の注文を手動で特定の日付(時間なし)に失効するように設定し、そのtype_timeとexpirationの値をプログラムで読み取ることができます。

自分で思いついたわけではなく、私がやったんです。

ご指摘ありがとうございます。私は全く手札を交換しないので、そのように確認できるとも思っていませんでした。少し変わった方法でやっています。以下はそのコードです。

  trade.OrderOpen(_Symbol, ORDER_TYPE_SELL_STOP, 0.1, 0, 1.24000, 0.0, 0.0, ORDER_TIME_SPECIFIED_DAY, D'2020.06.03 23:41:02');

と本命とする。


時間が考慮されていないことが判明。

しかし、まだ2つ目の疑問が残っています。expirationとorder activationのどちらが先に実行されるのか...

唯一心配なのは、テスターと実機やデモで挙動が異なることです。しかも、デモでも、呆気なく待たされるし...。
 
Alexey Viktorov:

しかし、はっきりさせないと2つ目の疑問があります。何が先に実行 されるのか、注文が有効になるのか...。

それは、ブローカーと人的要因、つまり彼らがそこでどのように物事を整理しているかによります。金曜日の日計り注文が月曜日の取引時間まで 保留されたままであることに気づきました(クォートセッション中も保留されたままです)。

ある晩、ディーリングルームで銀行に電話をして、「なぜ私の注文が執行されないのか?彼らは言った、「私たちはそれを見ていない。どうしてわからないのですか?これは私のMetaTraderにあります - 私は数時間前にそれを配置し、価格はすでに1時間前にそこにあるされています。朝、新入社員がMetaTraderからデータをダウンロードしに来て、私たちはすべてを見ることになるのですが、そのとき、私たちは別のプログラムで仕事をしています。

つまり、閾値以下の注文は誰にも興味がなく(閾値以上ではプライスオンデマンドモードで取引される)、どこにも出力されないため、ディーラーはせいぜい集約されたポジションを受け取るだけである

 

端末はオープンでビルド2470にアップグレードされました

そして、ここからが問題で、ロボットがテスターでアップデート前より悪い結果を出すようになったのです。

と思って調べ始めたら、こういうことだった。

通常モードでロボットを履歴に走らせたとき、最後に私のすべての取引を示すチャートを呼び出し、私はスクロールダウンして、そこに何が起こっているのかに驚きました。

あなたはチャートから見ることができるように、ネッティングアカウントで、先物油は、ロボットが任意の平均化、スケーリングなどを持っていないものの、いくつかのポジションを開いている。唯一のポジションストップとテイクがあり、ポジションの開始後にエントリアルゴリズムが無効になっています。


しかし、私は同じテストを受けてやったが、視覚的なテストだけで、視覚的なテストをやって、すべてがそこに良いですが


それはバグの更新であるかどうか教えてください、一般的に、すべての更新後に振りかけた、テイクとストップは、以前に市場に表示される位置の後に価格アスクと入札別のメソッドに設定されていた、今、彼らは価格と一緒に固執して移動し始めて、私はやり直して位置の開始価格に価格と停止を置き、インデントに拡散を追加しなければなりませんでした。

どこをどう掘ればいいのか

 
Konstantin Seredkin:

端末はオープンでビルド2470にアップグレードされました

そしてここからが問題で、ロボットがテスターでアップデート前より悪い結果を出すようになったのです。

...

やるべきこと

テスト時にExpert Advisorを実行するか」を確認するためのディグ。

 
Artyom Trishkin:

正しいEAがテストを実行しているか」を確認する方向で掘り下げる。

端末にはこれしかなく、標準品も撤去されている

 
Konstantin Seredkin:

端末にはこれしかなく、標準品も撤去されている

おっしゃる通りの挙動から判断すると、全く別のアルゴリズムを持つ別のEAです。