記事についてのディスカッション

 

新しい記事「DoEasyライブラリの時系列(第45部): 複数期間指標バッファ」はパブリッシュされました:

本稿では、複数期間モードと複数銘柄モードで使用する指標バッファオブジェクトおよびコレクションクラスの改善を始めます。現在の銘柄チャートの任意の時間枠からデータを受信して表示するためのバッファオブジェクトの使用を検討するつもりです。

残りのアクションとOnCalculate()ハンドラロジックは、コードコメントで詳細に説明されています。複数期間指標の操作がはるかに簡単になりました。自分で計算する必要はありません。代わりに、バッファにデータを書き込むだけで、ライブラリにデータの配置場所と表示方法を定義させることができます。



作者: Artyom Trishkin

 

このライブラリはすでに実用的なタスクをこなせるのでしょうか、それともまだ未完成なのでしょうか?


例えば、サブウィンドウのシニアTFからMACDを表示 する、つまり、M1...のチャートにライブラリの助けを借りて書かれたインディケータを投げる、といった実用的な例を見てみたいです。Н1...サブウィンドウでD1のMACDを見る。

 
Igor Makanu:

このライブラリーはすでに実用的なタスクをこなせるのか、それともまだ未完成なのか?


例えば、サブウィンドウのシニアTFからMACDのような実用的な例を見てみたい。Н1...サブウィンドウでD1のMACDを見る。

予定の作業の半分弱が終わった。

MACDの計算がライブラリの助けを借りて作られたインジケータのコードに含まれるのであれば、はい、うまくいきます。標準的なものをライブラリから出力する必要がある場合は...。標準MACDのデータは、OnCalculate()の中で、ライブラリに基づいて作成されたインジケータのバッファに書き込まれます。この記事の例では、価格がインジケータ・バッファに書き込まれています。価格の代わりにMACDの値を書き込んでください。必要なタイムフレームからMACDを取得する必要があるのは事実ですが、これは当然のことです。さらに、後ほど、標準インジケータとカスタム・インジケータを 扱うためのクラスが用意されます。

 
Artyom Trishkin:

予定の半分弱はまだ終わっていない。

MACDの計算がライブラリの助けを借りて作られたインジケータのコードに含まれるのであれば、はい、うまくいきます。標準的なものをライブラリから出力する必要がある場合は...。標準MACDのデータは、OnCalculate()の中で、ライブラリに基づいて作成されたインジケータのバッファに書き込まれます。この記事の例では、価格がインジケータ・バッファに書き込まれています。価格の代わりにMACDの値を書き込んでください。必要なタイムフレームからMACDを取得する必要があるのは事実ですが、これは当然のことです。さらに、後ほど、標準インジケータとカスタム・インジケータを 扱うためのクラスが用意されます。

OK、では待つ必要がある

このようなタスク - 上級のTF(ストキャスティクス、MACD、または単なるMA)からインディケータを見ること - は、トレーダーのフォーラムで常に求められています。もちろん、問題はそれを行う方法ではなく、ライブラリがこのようなタスクをどれだけ速く(コードを書く速度の点で、または書くのに便利な点で)解決できるかです。

 
Igor Makanu:

わかった。

このようなタスク、つまり上級のTF(ストキャスティクス、MACD、または単なるMA)からインディケータを見るというタスクは、トレーダーのフォーラムで常に求められています。もちろん、問題はそれをどのように行うかではなく、ライブラリがそのようなタスクをどの程度速く(コードを書く速度の点で、または書くのに便利な点で)解決できるかということです。

私はこのようなタスクをライブラリに手を加えることなく実行しようとした。それは可能だが、余分なステップが必要だ。

これは計算バッファ・オブジェクトに欠けている機能です。次の記事で紹介します。

 

このライブラリとあなたの仕事に感謝します。

私はエラーなしでコンパイルすることができませんでした。(私はパート90から最新のインクルードを持っています)

こんな変更をしました:

MQL5Indicators↩TestDoEasyPart45

403行目

  • engine.SetSoundsStandart(); -->engine.SetSoundsStandard();

MQL5Include︓DoEasy︓Objects︓Indicators︓Buffer.mqh

84行目

  • virtual void PrintShort(const bool dash=false,const bool symbol=false) ; -->virtual void PrintShort(const bool dash=false,const bool symbol=false) {return;}?

これでOK?


 
thebeno #:

このライブラリーとあなたの仕事に感謝します。

私はエラーなしでコンパイルすることができませんでした。(私はパート90から最新のインクルードを持っています)

私はこの変更を行いました:

MQL5Indicators\TestDoEasyPart45\TestDoEasyPart45.mq5

行 403:

  • engine.SetSoundsStandart(); -->engine.SetSoundsStandard();

MQL5Include\DoEasy\Objects\Indicators\Buffer.mqh

84行目

  • virtual void PrintShort(const bool dash=false,const bool symbol=false) ; -->virtual void PrintShort(const bool dash=false,const bool symbol=false) {return;}.

これでOK?



はい、正常です。ライブラリは開発中で、常に変化しています。したがって、ライブラリの90番目の部分を接続する場合、45番目のバージョン用に書かれたプログラムをコンパイルすることはできません。
新しい変更については、プログラム自体のコードを編集する必要があります。
いずれにせよ、ライブラリの開発が終了した時点で、すべてのサンプルは最新バージョンに合わせられます。