記事"MetaTrader5 での MATLAB 2018 計算関数の使用"についてのディスカッション

 

新しい記事 MetaTrader5 での MATLAB 2018 計算関数の使用 はパブリッシュされました:

2015年にMATLAB パッケージがアップグレードされた後、DLL ライブラリを作成する最新のメソッドを検討する必要がありました。 この記事では、サンプルの予測インジケータを使用して、現代の64ビットバージョンのプラットフォームを使用して MetaTrader5 と MATLAB をリンクするメソッドを説明します。 MATLAB の接続シーケンス全体を考慮することにより、MQL5 開発者は速く高度な計算機能があるアプリケーションを作成し、«落とし穴»を回避することができます。

このインジケータのパフォーマンスは、メタトレーダープラットフォームによって提供される EURUSD H1 トレードデータでテストしました。 それほど大きくないデータ・セグメントを選択しました (450ユニット)。 長期間の "シーズナル " は、28、30および32のユニットに等しいラグがテストされました。 32ユニットの期間のラグは、ヒストリーの考慮された期間に最高でした。

さまざまなヒストリーフラグメントの一連の計算が実行されました。 このモデルでは、450ユニットのデータセグメントの長さ、32ユニットのシーズナルラグ、および予測長30ユニットが1回設定され、変更されませんでした。 予測の質を評価するために、異なる断片について得られた結果を実際のデータと比較しました。

以下はインジケータ操作の結果を示す数値です。 すべての図で、チョコレート色は、SARIMA (2, 1, 2) モデルを選択するために使用するフラグメントの完了を示し、その基礎で得られた結果は青色で示されます。

EURUSDH1_450(32)-180

作者: Roman Korotchenko

 

Rでは、このような複雑なモデルも数行で作成できる。それに見合った時間消費ではない。それに、新しいモデルを作るたびにオリジナルのコードを書かなければならない。

期待できない。MATLABに強い人にとっては、選択肢になるかもしれないが。

しかし、この仕事は印象的だ。

幸運を祈る。

 

ここに手を加えるべきだろうか?ダメですか?

matlab_st

幸運を祈る。

 
Vladimir Perervenko:

ここに手を加えるべきだろうか?ダメですか?

頑張って

間違いがあるってこと?具体的にどこをどう変えればいいんですか?見当たりませんね。

 
Roman Korotchenko:

間違いがあったということですか?具体的にどこをどう変えればいいんですか?それは分からない。

その表現はおかしい。これを見てください。この式は常に「FALSE」となっている。

 
Vladimir Perervenko:

その表現はおかしい。これを見てほしい。式は常に「FALSE」となっている。

これは、使用されたタイムステップに対して過剰な「オーバーインシュアランス」であるようだ。新しいカウントよりも速く処理が行われたことがわかった。これはコンピュータの性能が良いことを示している。この条件は偽なので、アルゴリズムには影響しない。あまり頻繁に真になるようであれば、もっと悪いだろう)。インジケータの開発に取り組み、条件が無意味にならないように「移動」させます。コメントありがとうございました。

 
Roman Korotchenko:

使用したタイムステップに対して過剰な "オーバーインシュランス "があったようだ。新しいカウントダウンよりも速く処理が行われたことが判明した。これは、コンピュータの性能が良いことを示している可能性もある。この条件は偽なので、アルゴリズムには影響しない。あまり頻繁に真になるようであれば、もっと悪いだろう)。インジケータの開発に取り組み、条件が無意味にならないように「移動」させます。コメントありがとうございました。

幸運を祈ります。

 
Roman Korotchenko:

使用したタイムステップに対して過剰な "オーバーインシュランス "があったようだ。新しいカウントダウンよりも速く処理が行われたことが判明した。これは、コンピュータの性能が良いことを示している可能性もある。この条件は偽なので、アルゴリズムには影響しない。あまり頻繁に真になるようであれば、もっと悪いだろう)。インジケータの開発に取り組み、条件が無意味にならないように「移動」させます。ご指摘ありがとうございます。

これはコンパイラの警告で あり、処理速度とは関係ありません。この条件ではuint型の符号なし変数を使用しており、<0になることはありません。int型に置き換えることで、負の差を得ることができます。

 
Stanislav Korotky:

これはコンパイラの警告で、処理速度とは関係ありません。この条件ではuint型の符号なし変数を使用しているため、<0になることはない。int型に置き換えることで、負の差を得ることができます。

ヒントをありがとう。

 
TradingViewとの統合は?
 
Roman ,
Windows 10のクリーンインストールでファイルをテストしたことがありますか?何をやってもmcrパッケージからランタイムdllをロードしません。 MCRラン タイムをダウンロードしました
http://ssd.mathworks.com/supportfiles/downloads/R2018b/deployment_files/R2018b/installers/win64/MCR_R2018b_win64_installer.exe
 ありがとうございます。