Init()およびDeInit()実行シーケンス - ページ 18 1...111213141516171819202122232425...28 新しいコメント fxsaber 2017.04.14 11:48 #171 Alexey Kozitsyn: 松葉杖の使用など?例を挙げてみましょうか。異なるシンボルやTFを持つチャートにChartIndicatorAdd()でインジケータを追加することはできません。エラーが表示されます。https://www.mql5.com/ru/docs/chart_operations/chartindicatoraddChartIndicatorAdd指定されたハンドルを持つインジケータを指定されたチャートウィンドウに追加します。インジケータとチャートは同じシンボルとタイムフレームに描画されなければ なりません。 これが今の制約です。サービスには入りません。 Документация по MQL5: Операции с графиками / ChartIndicatorAdd www.mql5.com Операции с графиками / ChartIndicatorAdd - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 fxsaber 2017.04.14 11:52 #172 ほとんどsubjの話題で、ちょっとだけ脱帽。 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム バグ、バグ、質問 fxsaber さん 2016.09.23 10:48 NONEのチャートにインジケータを設定しました#property indicator_separate_window #property indicator_buffers 1 #property indicator_plots 1 double Buffer[]; int handle = INVALID_HANDLE; void OnInit() { ::SetIndexBuffer(0, Buffer, INDICATOR_DATA); handle = ChartIndicatorGet(0, 1, ChartIndicatorName(0, 1, 0)); } #define TOSTRING(A) #A + " = " + (string)A + "\n" int OnCalculate( const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[] ) { if (handle != INVALID_HANDLE) { Buffer[rates_total - 1] = MathRand(); double BufferCopy[]; if (CopyBuffer(handle, 0, 0, 1, BufferCopy) > 0) Print(TOSTRING(BufferCopy[0]) + TOSTRING(Buffer[rates_total - 1])); } return(rates_total); }チャートからインジケーターを手で取り外すこと。ログを見ると、インジケータが動作し続けていることがわかります。ターミナルですべてのチャートを閉じても、実行されたままです。そして、それは当然ながら何の役にも立ちません。void OnDeinit( const int Reason ) { if (handle != INVALID_HANDLE) IndicatorRelease(handle); return; }端末を再起動すると、インジケータの実行が停止します。アイドリングでこのように実行できる指標がどれだけあるのか、私たちは何も知らないのですコントロールが全くできていないのです。 開発者に文句を言わずに。 削除済み 2017.04.14 12:01 #173 fxsaber: これはもう制限です。サービスには入りません。そういうことでは全然ないんです。EAからインジケータを追加するのではなく、EAを使用してインジケータを作成する。これについてはサービスや1つのチャートで複数のEAを動かす機能では、議論されているトラブスを完全にカバーすることはできないのでは?サービスを利用してインジケータを作成することができない場合、ファイルからのデータでインジケータを作成する問題が解消されません。OnDeinit() -> OnInit() のシーケンスが制御されていない場合。TFの変更はユーザーのアクションであり、このアクションに対する応答(OnDeit())は、これが必要ないとき(OnInit()の後、あるいはOnCalculate()の後かもしれません)に発生します。つまり、インジケータがデータをファイルに記録し、そのデータに基づいてグラフの系列をプロットする場合、データが「連続して」書き込まれていないと、すべてのデータの正しい表示が行われない。しかし、もしサービスがグローバルなプログラム(GPTのような、しかしプログラム全体)であり、それが指標バッファを 作成でき、計算がTFs変更/チャートクローズなどのユーザーアクションによって中断されないならば、この問題は存在しないでしょう。しかし、その間、指標はいつものように去勢される。 fxsaber 2017.04.14 12:08 #174 Alexey Kozitsyn:そういうことでは全然ないんです。EAからインジケータを追加するのではなく、EAを使用してインジケータを作成 する。用語がよくわからない。 削除済み 2017.04.14 12:12 #175 fxsaber:用語がよくわからない。 データを表示するだけでなく、インジケーターバッファに 書き込んだ状態で計算し、表示すること。 Nikolai Semko 2017.04.14 12:18 #176 Slawa:OnChartEventに対する解決策はまだありません。 解決策がないとはどういうことですか?マウスへのアクセス機能がなければ、どんなサービスになるのでしょうか?そして、ユーザーイベントも 処理したい。 fxsaber 2017.04.14 12:19 #177 Alexey Kozitsyn: データを表示するだけでなく、インジケーターバッファに 書き込みながら計算し、表示する。彼らは、TFの変更時に、この指標で計算されたデータを、信頼性が高く論理的にこの指標の別のコピーに移行 することができないことを訴えています。これは、計算部分をサービスが行い、それをインジケータが表示するようにすれば、サービスを通じて簡単に行うことができます。太字で表示されている以外の場合は、従来の指標と同じように書くことができます。 削除済み 2017.04.14 12:23 #178 fxsaber:彼らは、TFの変更時に、この指標で計算されたデータを、信頼性が高く論理的にこの指標の別のコピーに移行 することができないことを訴えています。これは、計算部分をサービスが行い、それをインジケータが表示するようにすれば、サービスを通じて簡単に行うことができます。太字で強調表示されている以外の場合は、従来通りの方法でインジケータを書くことができます。 よし、じゃあ、何が出るか見てみよう。ベータ版はいつになるのでしょうか? fxsaber 2017.04.14 12:24 #179 Alexey Kozitsyn: よし、まあ、どうなるかな。ベータ版はいつ? 私がゴーサインを出したら、今夜になりますよ。 Slava 2017.04.14 12:36 #180 Nikolai Semko: 解決策がないってどういうこと?マウスへのアクセス機能がなければ、どんなサービスになるのでしょうか?あと、ユーザーイベントも 扱いたいですね。No solutionは「解き方がわからない」という意味で、「解かない」という意味ではありません。また、カスタムイベントについても全く問題ありません 1...111213141516171819202122232425...28 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
松葉杖の使用など?例を挙げてみましょうか。
異なるシンボルやTFを持つチャートにChartIndicatorAdd()でインジケータを追加することはできません。エラーが表示されます。
https://www.mql5.com/ru/docs/chart_operations/chartindicatoradd
ChartIndicatorAdd
指定されたハンドルを持つインジケータを指定されたチャートウィンドウに追加します。インジケータとチャートは同じシンボルとタイムフレームに描画されなければ なりません。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
バグ、バグ、質問
fxsaber さん 2016.09.23 10:48
これはもう制限です。サービスには入りません。
そういうことでは全然ないんです。EAからインジケータを追加するのではなく、EAを使用してインジケータを作成する。
これについては
サービスや1つのチャートで複数のEAを動かす機能では、議論されているトラブスを完全にカバーすることはできないのでは?
サービスを利用してインジケータを作成することができない場合、ファイルからのデータでインジケータを作成する問題が解消されません。OnDeinit() -> OnInit() のシーケンスが制御されていない場合。TFの変更はユーザーのアクションであり、このアクションに対する応答(OnDeit())は、これが必要ないとき(OnInit()の後、あるいはOnCalculate()の後かもしれません)に発生します。
つまり、インジケータがデータをファイルに記録し、そのデータに基づいてグラフの系列をプロットする場合、データが「連続して」書き込まれていないと、すべてのデータの正しい表示が行われない。
しかし、もしサービスがグローバルなプログラム(GPTのような、しかしプログラム全体)であり、それが指標バッファを 作成でき、計算がTFs変更/チャートクローズなどのユーザーアクションによって中断されないならば、この問題は存在しないでしょう。しかし、その間、指標はいつものように去勢される。
そういうことでは全然ないんです。EAからインジケータを追加するのではなく、EAを使用してインジケータを作成 する。
用語がよくわからない。
用語がよくわからない。
OnChartEventに対する解決策はまだありません。
データを表示するだけでなく、インジケーターバッファに 書き込みながら計算し、表示する。
彼らは、TFの変更時に、この指標で計算されたデータを、信頼性が高く論理的にこの指標の別のコピーに移行 することができないことを訴えています。
これは、計算部分をサービスが行い、それをインジケータが表示するようにすれば、サービスを通じて簡単に行うことができます。
太字で表示されている以外の場合は、従来の指標と同じように書くことができます。
彼らは、TFの変更時に、この指標で計算されたデータを、信頼性が高く論理的にこの指標の別のコピーに移行 することができないことを訴えています。
これは、計算部分をサービスが行い、それをインジケータが表示するようにすれば、サービスを通じて簡単に行うことができます。
太字で強調表示されている以外の場合は、従来通りの方法でインジケータを書くことができます。
よし、まあ、どうなるかな。ベータ版はいつ?
解決策がないってどういうこと?マウスへのアクセス機能がなければ、どんなサービスになるのでしょうか?あと、ユーザーイベントも 扱いたいですね。
No solutionは「解き方がわからない」という意味で、「解かない」という意味ではありません。
また、カスタムイベントについても全く問題ありません