インディケータ: 加重相関係数によって見つかった最近傍による価格予測 - ページ 3 1234 新しいコメント Ryan L Johnson 2026.04.14 01:21 #21 Amos Tsopotsa #:このコードには若干の改良が必要だが、OKJUSTASKのアイデアは理にかなっている。 私は、このコードにごくわずかな改良を加えた: グローバル・スコープにb用の変数を追加する。 lastPatternStartTime変数を追加し、それを新しいパターン開始時間と比較し、同じでなければChartRedraw()を呼び出す条件を追加した。 (数時間のテストで判別できたことは、新しいパターンが見つかったときに縦線のカオスが現れた)。 ファイル: nearest_neighbor_-_weighted_corr.mq5 6 kb Ryan L Johnson 2026.04.14 18:25 #22 もう2つほど若干の改良を加えた: OnInit() を void から int に変更し、INIT_SUCCEEDED を返すようにした、 インジケータの最初の未来の価格値を保存するターミナル全体のGlobalVariable (GV)を追加しました(CopyBuffer()は「未来のインジケータバッファ 値」を持つEAでは機能しません)。 GVがターミナルから自動的に削除されるOnDeinit()を追加。 これらの変更の目的は、インディケータを自動売買により 適したものにすることです。目的に応じてより多くの将来の価格値が必要な場合は、コードの最後で0から48のバーをループし、GV値を更新してください。 ファイル: nearest_neighbor_-_weighted_corr.mq5 7 kb Stanislav Korotky 2026.04.14 21:11 #23 Ryan L Johnson #: インジケーターの最初の未来の価格値を保存するターミナルワイドのGlobalVariable (GV)を追加(「未来のインジケーターバッファ 値」を使用するEAでは、CopyBuffer()は機能 しません)、 これらの変更の目的は、インディケータを自動売買により 適したものにすることです。目的により多くの将来価格値が必要な場合は、コードの最後にある0から48のバーをループし、GV値を更新してください。 なぜでしょうか?将来の値であっても、インジケータ・バッファから 任意の値に アクセスできます。 MQL5 Book: Getting timeseries data from an indicator: CopyBuffer / Creating application programs www.mql5.com An MQL program can read data from the indicator's public buffers by its handle. Recall that in custom indicators, such buffers are arrays specified... Ryan L Johnson 2026.04.14 23:16 #24 Stanislav Korotky #: それはなぜか?インジケーターバッファからは、未来からでも どんな値にも アクセスできます。 私はインジケーターではそれができましたが、EAではできませんでした。EAでそうしている他の例/記事はありますか? Ryan L Johnson 2026.04.15 01:22 #25 Ryan L Johnson #:インジケーターではできましたが、EAではできませんでした。EAでそのようなことをしている他の例/記事はありますか? 私の投稿#24は 無視してください。私はEAでCopybuffer()の間違ったフォームを使っていたのではないかと疑っています。正しいのは "[I]パラメータ CopyBuffer ( 第一形式)では、オフセットを(- N)に 等しく 与えなければならない..." です。 int CopyBuffer(int handle, int buffer, int offset, int count, double &array[]) Ryan L Johnson 2026.04.15 03:06 #26 Stanislav Korotky, ドキュメントへのリンクありがとうございます。最初のフォーム」は将来のバッファ値をコピーするのに非常に便利です。 遅ればせながら、このインディケータのソースコードを掲載していただきありがとうございます。 数十年前のこのような価格パターンが、現在でも有効であるとは思いもしませんでした。私はこのインジケーターを使い、すぐに2つの勝ちトレードを捕まえました。ひとつは1999年頃、もうひとつは2005年頃のものです。 以下は、現在使用しているインジケータのコードです(GVは削除): ファイル: nearest_neighbor_-_weighted_corr.mq5 7 kb Ryan L Johnson 2026.04.27 16:30 #27 開始時刻が同じで終了時刻が現在のパターンと異なる新しい価格パターンが出現することが考えられるので、条件付きChartRedraw()関数──にパターン終了時刻を追加した。開始時刻の違いか終了時刻の違いのどちらかでChartRedraw()が呼び出されます。 ファイル: nearest_neighbor_-_weighted_corr.mq5 7 kb Renat Akhtyamov 2026.04.27 17:19 #28 このインジケーターはテスト可能である。 インジケーターに2本の垂直線(計算開始と計算終了)を追加する必要があります。 そして、赤い線がどこに来るか、チャートがどのように形成されたか、すなわち、予想が実行可能かどうかをすぐに確認することができます。 Ryan L Johnson 2026.04.27 20:20 #29 Renat Akhtyamov 垂直線を 追加する必要があります。 そして、赤い線がどこに来るか、チャートがどのように形成されたか、すなわち、予想が実行可能かどうかをすぐに確認することができます。 これが、ヒストリカル・パターンの始値をオーバーレイとして描く青い線の目的です。 Ryan L Johnson 2026.04.28 01:20 #30 ここでは、歴史的な青い線と比較するために、"バカバカしいほど単純な "バー・オープン価格 インジケーターを紹介しよう。 ファイル: Bar_Open_Prices_Line_Study.mq5 3 kb 1234 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
このコードには若干の改良が必要だが、OKJUSTASKのアイデアは理にかなっている。
私は、このコードにごくわずかな改良を加えた:
- グローバル・スコープにb用の変数を追加する。
- lastPatternStartTime変数を追加し、それを新しいパターン開始時間と比較し、同じでなければChartRedraw()を呼び出す条件を追加した。
(数時間のテストで判別できたことは、新しいパターンが見つかったときに縦線のカオスが現れた)。もう2つほど若干の改良を加えた:
これらの変更の目的は、インディケータを自動売買により 適したものにすることです。目的に応じてより多くの将来の価格値が必要な場合は、コードの最後で0から48のバーをループし、GV値を更新してください。
これらの変更の目的は、インディケータを自動売買により 適したものにすることです。目的により多くの将来価格値が必要な場合は、コードの最後にある0から48のバーをループし、GV値を更新してください。
それはなぜか?インジケーターバッファからは、未来からでも どんな値にも アクセスできます。
私はインジケーターではそれができましたが、EAではできませんでした。EAでそうしている他の例/記事はありますか?
インジケーターではできましたが、EAではできませんでした。EAでそのようなことをしている他の例/記事はありますか?
私の投稿#24は 無視してください。私はEAでCopybuffer()の間違ったフォームを使っていたのではないかと疑っています。正しいのは
"[I]パラメータ CopyBuffer ( 第一形式)では、オフセットを(- N)に 等しく 与えなければならない..." です。
Stanislav Korotky, ドキュメントへのリンクありがとうございます。最初のフォーム」は将来のバッファ値をコピーするのに非常に便利です。
遅ればせながら、このインディケータのソースコードを掲載していただきありがとうございます。 数十年前のこのような価格パターンが、現在でも有効であるとは思いもしませんでした。私はこのインジケーターを使い、すぐに2つの勝ちトレードを捕まえました。ひとつは1999年頃、もうひとつは2005年頃のものです。
以下は、現在使用しているインジケータのコードです(GVは削除):
開始時刻が同じで終了時刻が現在のパターンと異なる新しい価格パターンが出現することが考えられるので、条件付きChartRedraw()関数──にパターン終了時刻を追加した。開始時刻の違いか終了時刻の違いのどちらかでChartRedraw()が呼び出されます。
このインジケーターはテスト可能である。
インジケーターに2本の垂直線(計算開始と計算終了)を追加する必要があります。
そして、赤い線がどこに来るか、チャートがどのように形成されたか、すなわち、予想が実行可能かどうかをすぐに確認することができます。
そして、赤い線がどこに来るか、チャートがどのように形成されたか、すなわち、予想が実行可能かどうかをすぐに確認することができます。