新しいMetaTrader 4 Client Terminal 387とMetaTrader 4 Data Center build 387について - ページ 10

 
nen:

これはビジュアルモードのバグではありません。まさにインジケーターバッファーのゼロ化-388版でのバッファーの再初期化です。

残念ながら、あなたは勘違いしています。これはIndicatorCounted()と呼ばれる機構の標準的な作業で、履歴の大幅な変更時にインジケータバッファを リセットします(この機構はすべてのビルドにありました)。

この場合、ビジュアルモードでのバグがあります(この週はリアルモードでは発見していません)。バグの内容はすでに説明したとおりです。

 
AlexSTAL:
この動作の原因は、下の投稿で完全にわかりました。

確認ありがとうございます!どこを掘ればいいのかが明確になりました。

できるだけ早く発見し、修正し、アップデートをリリースするよう努めます。

 
AlexSTAL:
ほらね、自分の質問に自分で答えているようだ。

私のミスで、最近の開発ではIndicatorCounted()は適用されません。ZUPでそうなっているだけです。そして、この再初期化をキャッチしない。
 
ターミナルと最新のビルドでバグがあることを報告したい、すなわち、偏差パラメータ0.8プット0を指定したときにiBandsのインジケータ です。このパラメータはintに属し、整数でなければならないことは理解しています。 しかし、インジケータをチャートに貼り付けると、偏差値が1より小さく設定されることがあるのです。チャート上では偏差値を1以下に設定できるのに、Expert Advisor上ではできないのはなぜですか?
 
VOLDEMAR:
私は、ターミナルと最新のビルドでバグがあることをお知らせしたいと思います、すなわち、偏差パラメータ0.8プット0を指定したときにiBandsのインジケータ。このパラメータはintに属し、整数でなければならないことは理解しています。 しかし、インジケータをチャートに貼り付けると、偏差値が1より小さく設定されることがあるのです。チャート上では1未満に設定できるのに、Expert Advisorでは設定できないのはなぜか、またそれを克服する方法は?
私が記憶している限りでは、ずっとそうでした。そうでなければ、Slava (stringo)が訂正してくれるでしょう。
 
VOLDEMAR:
私は、端末と最新のビルドでバグがあることをお知らせしたい、すなわち、偏差パラメータ0.8を指定したときにiBandsのインジケータは0を置く 。このパラメータはintに属し、整数でなければならないことは理解しています。 しかし、インジケータをチャートに貼り付けると、偏差値が1より小さく設定されることがあるのです。チャート上では偏差値を1以下に設定できるのに、Expert Advisorではできないのはなぜか・・・・・・あるいはそれを回避する方法は・・・・・・・

そうです、渡されたパラメータの種類を見てください。

int です。

ということで、iCustom BBandsを使用 します。

 
sergeev:

そうです、渡されたパラメータの種類を見てください。

イント

ということで、iCustom BBandsを使用します。

と使い方を教えてください。

未使用

 
VOLDEMAR:

と使い方を教えてください。

未使用

何事にも初めてはつきものですからね。:)
 

端末には明らかにGetTerminalStateの ような関数がなく、端末が今何をしているかを直接「尋ねる」ために使用できるコード(ビットのセット)を返すはずです。例えばIsConnected(ちなみに再ログイン後は必ずしも正しく結果を返さない)は、イエスかノーしか報告しませんが、もっと詳しい説明が欲しいところです。

- オフライン (接続しようとしている、動作していない、停止している)

- 接続中

- connected(サーバーに接続中)

最後のケースも説明が必要です。

- HistoryOrdersLoading、HistoryOrdersLoaded(ダウンロード、注文の全履歴を ダウンロードする。)

- HistoryBarsLoading、HistoryBarsLoaded(ダウンロードした、価格別の全履歴。)

また、注文処理中に、注文を開くコマンドが送信され、端末がその注文の開始、変更、または終了を待っていることを知ることは有用である。注文がすぐに実行されることはなく、端末が何を考えているのかがわかるとよい(ティックは動いているのに、端末がなぜか取引していない-なぜ?)

また、EAの動作/取引許可状況を「パック」することもできます。

 
nen:

よかったです。

視覚テストにかける。Moving Average Expert Advisor。

ZUPを設定する。

ユーロです。時間

私のコードは履歴のスワップを追跡することに注意してください。だから、履歴が入れ替わるときに再初期化するんです。

このスレッドの前半で、私はあるコードを投稿しました。すべての最適化がそこにある。

ここに写真を貼り付けています。私の「肥大化した」コードは、絵を描くためのもの、ただそれだけです。自動売買には対応していません。画像が正しく描画されない場合は、バグとなります。

1枚目の写真ちょっとしたエピソードを紹介します。1本の光線が描かれる。すべてが正常です。

テスト開始直後から数本のジグザグ線が描かれ、蝶が描かれた。普通に飛ぶ。

さらに飛ばす。YOUR再初期化が発生しました。ソフトウェアでは追跡できません。再初期化をトレースするルーチンの方法はありません。

計算の最適化が有効であり、完全な再計算の信号がないため、その結果を見ることができます。

少し新しい歴史が積み重なりました。ジグザグ状の光線が1本描かれている。

ここでインジケータをリセットすると、初期化が行われ、すべてがこのように表示されます。

といった具合に。YOURインジケータ・バッファの再初期化をトレースする社内機能がない。

また、ティック毎にインジケータを再計算することはできません。そんなメチャクチャなことを自分でやってみろ。YOUは昔からこの精神で色々なことをやっています。そして、多くのバグについて何度伝えても、理解してもらえなかった。そして今、多くのプログラマーがあなたとの戦いに疲れ、あなたのバグの回避策を自分で作ってしまったところで、あなたは卑劣なことをアレンジし始めているのです。

あなたのコードも同じように大きくなりました。そして、自分の革新的な技術がどのような結果をもたらすか、ほとんど考えていない。

さらにテストしてみましょう。


今回も再初期化が何度か行われていますね。このように表示されるはずです。

再現は難しいのでしょうか?それとも、ただ単に嫌なだけ?

そして、さらにテストを進めると、すべてが同じ流れになります。

人のせいにしないでください。コードが肥大化している。

-------

結論から言うと、もう一度言います。自分のことは心配ない。私は、あなたのバグのいずれかを私のためにプログラム的に回避することがあります。しかし、ユーザーは(その数は多いが)、それができなくなる。

付け加えます。私は自分のインジケータを販売したことはありませんし、有償でインジケータを開発したこともありません。387-388のビルドのようにメタクオートがすべてを根本から変えてしまうようなことがあると、外部から来た人はMQL(※)言語を使った開発ではいい商売ができなくなると思うんです。サードパーティの開発者に、まだ安定した開発フレームワークを提供できないのですね。

自分の言語を使った有料開発は、すべて一種のごまかしだと考えています。


説明通りのことができた。でも、ちょっとだけ手を加えて。

  1. クライアントターミナルでは、OURバッファの再初期化でログに出力するように設定しています。
  2. インジケータZUPにバタフライ削除時のプリントアウトを入れる。

以下はそのログです。

15:45:16 Compiling 'ZUP_v92'
15:45:16 ZUP_v92 EURUSD,H1: loaded successfully
15:45:40 ZUP_v92 EURUSD,H1: initialized
15:45:40 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1095  IndicatorCounted=0
15:45:40 ZUP_v92 EURUSD,H1: triangle deleted
15:45:40 ZUP_v92 EURUSD,H1: triangle deleted
15:45:40 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:40 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1095  IndicatorCounted=0
15:45:40 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:40 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1095  IndicatorCounted=1094
15:45:41 custom indicator ZUP_v92 EURUSD,H1 buffer reinitialize
15:45:41 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1001  IndicatorCounted=0
15:45:41 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:41 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1001  IndicatorCounted=0
15:45:41 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:41 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1001  IndicatorCounted=1000
15:45:41 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:41 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1001  IndicatorCounted=1000
15:45:41 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:41 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1001  IndicatorCounted=1000
15:45:41 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:41 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1001  IndicatorCounted=1000
15:45:41 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:45:41 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1001  IndicatorCounted=1000
15:45:41 ZUP_v92 EURUSD,H1: delete objects from ZigZag
...
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:07 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:07 ZUP_v92 EURUSD,H1: triangle deleted
15:46:08 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:46:08 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1007  IndicatorCounted=1006
15:46:08 ZUP_v92 EURUSD,H1: triangle deleted
15:46:08 ZUP_v92 EURUSD,H1: triangle deleted
...
15:55:15 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:15 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1036  IndicatorCounted=1035
15:55:15 ZUP_v92 EURUSD,H1: triangle deleted
15:55:15 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:23 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1036  IndicatorCounted=1035
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:23 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1036  IndicatorCounted=1035
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:23 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1036  IndicatorCounted=1035
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:23 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1036  IndicatorCounted=1035
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:23 ZUP_v92 EURUSD,H1: triangle deleted
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1035
15:55:24 ZUP_v92 EURUSD,H1: triangle deleted
15:55:24 ZUP_v92 EURUSD,H1: triangle deleted
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:24 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:24 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:52 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:52 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:52 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:52 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:52 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:52 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:52 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:52 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:53 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:53 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:53 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:53 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036
15:55:53 ZUP_v92 EURUSD,H1: delete objects from ZigZag
15:55:53 ZUP_v92 EURUSD,H1: delete_objects3. Bars=1037  IndicatorCounted=1036

最後のバタフライ削除(2つの三角形の削除行)の後、バッファの再初期化が行われませんでした

ちなみに、お気に入りの225ビルドでも同じ挙動が再現されます