mql5言語の特徴、微妙なニュアンスとテクニック - ページ 56 1...495051525354555657585960616263...247 新しいコメント fxsaber 2017.10.05 07:09 #551 アンドレイ・ハチムリアンスキー性能測定は行いましたか?どれくらい遅くなるのか気になるところです。特にカスタムインディケーターでは。計測していませんが、MT4より遅いということはないはずです。 測定#define AMOUNT 1 e7 void OnStart() { int handle = iMA(NULL, PERIOD_CURRENT, 1, 0, MODE_SMA, PRICE_CLOSE); const ulong StartTime = GetMicrosecondCount(); for (int i = 0; i < AMOUNT; i++) handle = iMA(NULL, PERIOD_CURRENT, 1, 0, MODE_SMA, PRICE_CLOSE); Print((string)((GetMicrosecondCount() - StartTime) / AMOUNT) + " mcs per iMA"); Print(handle); }その結果0.3383469 mcs per iMA3分の1マイクロ秒のテスト。つまり、1,000万刻みで1回実行すると、3秒遅くなる。 Andrey Khatimlianskii 2017.10.05 08:36 #552 fxsaber測定ハンドルの作成+ループ内の値の取得をオリジナル版と比較しなかったのは不思議ですね、その違いが気になるところです。 fxsaber 2017.10.05 08:38 #553 アンドレイ・ハチムリアンスキーハンドルの作成+ループでの値の取得をオリジナル版と 比較しなかったのは不思議ですが、その違いが興味深いところです。同じハンドルから値を取っているため。iMAは常に同じハンドルに同じパラメータを付けて返します。 Vitaly Muzichenko 2017.10.05 12:09 #554 fxsaber MQL5では、このように書いても全く問題ありません。つまり、各ティックで ハンドルを「作成」します。新しいインディケータは作成されず、iMAの入力パラメータと以前のティックで開始されたインディケータとの比較にのみ時間が費やされます。つまり、MT4で行っていることと全く同じです。面白いデザインですね。この方法で、OnInitでハンドルを作成した場合の速度を確認してください。 fxsaber 2017.10.05 12:17 #555 ヴィタリー・ムジチェンコこの方法で、OnInitのハンドル作成時の速度を確認してください。 トレーディング、自動売買システム、ストラテジーテストに関するフォーラム mql5言語の特徴、微妙なニュアンスとコツ fxsaber さん 2017.10.05 09:09 1,000万刻みで1回実行すると、3秒遅くなる。それは、あなたの選択肢と比較した場合です。 Artyom Trishkin 2017.10.06 04:36 #556 標準のOrderCalcProfit()とOrderCalcMargin()の機能をクロスプラットフォームで置き換えるにはどうしたらいいですか?すでにどこかにあったような気がするのですが、こちらでは見当たりませんね~、眠かったのかな・・・。でも、検索して1時間以内には目が覚めたはずです :) fxsaber 2017.10.06 04:42 #557 アルチョム・トリシキン標準のOrderCalcProfit()とOrderCalcMargin()関数をクロスプラットフォーム化するためにどのように置き換えればよいですか?すでにどこかに掲載されているようですが、こちらでは見当たりません......もしかしたら、私が起きていたのかもしれませんが......。でも、1時間の検索中に目が覚めてしまったのでしょう :)https://www.mql5.com/ru/search#!keyword=myordercalcmargin&module=mql5_module_forum MQL5.Community www.mql5.com Поиск выполняется с учетом морфологии и без учета регистра. Все буквы, независимо от того, как они введены, будут рассматриваться как строчные. По умолчанию наш поиск показывает страницы... Artyom Trishkin 2017.10.06 04:50 #558 fxsaberhttps://www.mql5.com/ru/search#!keyword=myordercalcmargin&module=mql5_module_forum:)SymbolInfoMarginRate()は、4.0では存在しない。という質問を投げかけました。 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム mql5言語の特殊性、ヒントとコツ アルチョム・トリシキン さん 2017.10.06 06:36 標準のOrderCalcProfit()とOrderCalcMargin()を置き換えて、クロスプラットフォーム 化できるものは何ですか?すでにどこかにあったようなのですが、ここでは見つけられず、眠いのかもしれません...。でも、1時間の検索中に目が覚めればよかったんですけどね :) また、OrderCalcProfit()については、何もありません。 fxsaber 2017.10.17 09:22 #559 語学の機会ではなく、贈り物struct MQLTICK : public MqlTick { bool operator >( const MqlTick &Tick ) { return(this.bid > Tick.bid); } bool operator <( const MqlTick &Tick ) { return(this.ask < Tick.ask); } }; void OnStart() { MQLTICK Ticks[]; Print(CopyTicks(_Symbol, Ticks)); Print(Ticks[0] < Ticks[1]); } A100 2017.10.17 12:53 #560 fxsaber語学の機会ではなく、贈り物つかみどころのないランタイムエラーという名の贈り物struct MqlTick1 : MqlTick { }; struct MqlTick2 : MqlTick { int i; }; void Copyticks( MqlTick& []) {} void OnStart() { MqlTick1 ticks1[]; MqlTick2 ticks2[]; int i1 = ::CopyTicks( _Symbol, ticks1 ); //нормально ?????????????? Copyticks( ticks1 ); //error: 'ticks1' - parameter conversion not allowed int i2 = ::CopyTicks( _Symbol, ticks2 ); //нормально ?????????????? Print( "i2=", i2, ":", GetLastError()); //Результат: -1:4006 } CopyTicksはCopyticksよりどのように優れていますか?そして、その結果が常に-1であるのはなぜか。このようなエラー(4006)はコンパイル時に報告されるべきです。 1...495051525354555657585960616263...247 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
性能測定は行いましたか?どれくらい遅くなるのか気になるところです。特にカスタムインディケーターでは。
計測していませんが、MT4より遅いということはないはずです。
測定その結果
3分の1マイクロ秒のテスト。つまり、1,000万刻みで1回実行すると、3秒遅くなる。
測定
ハンドルの作成+ループ内の値の取得をオリジナル版と比較しなかったのは不思議ですね、その違いが気になるところです。
ハンドルの作成+ループでの値の取得をオリジナル版と 比較しなかったのは不思議ですが、その違いが興味深いところです。
同じハンドルから値を取っているため。iMAは常に同じハンドルに同じパラメータを付けて返します。
MQL5では、このように書いても全く問題ありません。
つまり、各ティックで ハンドルを「作成」します。新しいインディケータは作成されず、iMAの入力パラメータと以前のティックで開始されたインディケータとの比較にのみ時間が費やされます。つまり、MT4で行っていることと全く同じです。
面白いデザインですね。
この方法で、OnInitでハンドルを作成した場合の速度を確認してください。
この方法で、OnInitのハンドル作成時の速度を確認してください。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
mql5言語の特徴、微妙なニュアンスとコツ
fxsaber さん 2017.10.05 09:09
1,000万刻みで1回実行すると、3秒遅くなる。
それは、あなたの選択肢と比較した場合です。
標準のOrderCalcProfit()とOrderCalcMargin()の機能をクロスプラットフォームで置き換えるにはどうしたらいいですか?すでにどこかにあったような気がするのですが、こちらでは見当たりませんね~、眠かったのかな・・・。でも、検索して1時間以内には目が覚めたはずです :)
標準のOrderCalcProfit()とOrderCalcMargin()関数をクロスプラットフォーム化するためにどのように置き換えればよいですか?すでにどこかに掲載されているようですが、こちらでは見当たりません......もしかしたら、私が起きていたのかもしれませんが......。でも、1時間の検索中に目が覚めてしまったのでしょう :)
https://www.mql5.com/ru/search#!keyword=myordercalcmargin&module=mql5_module_forum
https://www.mql5.com/ru/search#!keyword=myordercalcmargin&module=mql5_module_forum
:)
SymbolInfoMarginRate()は、4.0では存在しない。という質問を投げかけました。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
mql5言語の特殊性、ヒントとコツ
アルチョム・トリシキン さん 2017.10.06 06:36
標準のOrderCalcProfit()とOrderCalcMargin()を置き換えて、クロスプラットフォーム 化できるものは何ですか?すでにどこかにあったようなのですが、ここでは見つけられず、眠いのかもしれません...。でも、1時間の検索中に目が覚めればよかったんですけどね :)
語学の機会ではなく、贈り物
語学の機会ではなく、贈り物
つかみどころのないランタイムエラーという名の贈り物
CopyTicksはCopyticksよりどのように優れていますか?
そして、その結果が常に-1であるのはなぜか。このようなエラー(4006)はコンパイル時に報告されるべきです。