MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1948 1...1941194219431944194519461947194819491950195119521953 新しいコメント Valeriy Yastremskiy 2022.04.15 20:01 #19471 Vitaly Muzichenko #:アイテムのコストを考慮する必要があります 私はあなたにコードを与えることができますが、それを理解するのに長い時間がかかります、それは大きいです、また、マージンの最大可能ロットを考慮します。 出来なければ質問します)))もちろん、ポイント値を考慮する必要がありますし、計算式も2段階式ではありません。用語を完全に理解していないと難しいし、前提条件の正しさを検証するのも時間がかかる)))契約の価値 = 貨幣日の1ロットの価値を計算)))) Кирилл Якимов 2022.04.16 23:03 #19472 こんにちは、定数のリストからテキスト形式で値を返す方法をご教示ください。 例えば、HistoryDealGetInteger関数は、イベントの要求時にENUM_DEAL_TYPE リストの中からint値を返します。返された番号から、「DEAL_TYPE_CREDIT - クレジット発生」であるという情報を得るにはどうしたらよいですか。しかし、デバッグ中は、この関数が返す3や5という数字が何を意味するのかが全く分かりません。 Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства сделок www.mql5.com Свойства сделок - Торговые константы - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Maxim Kuznetsov 2022.04.17 00:17 #19473 Кирилл Якимов #:こんにちは、定数のリストからテキストとして値を返す方法を教えてください。例えば、HistoryDealGetInteger関数は、イベントの要求時にENUM_DEAL_TYPE リストの中からint値を返します。返された番号から、「DEAL_TYPE_CREDIT - クレジット発生」であるという情報を得るにはどうしたらよいですか。しかし、デバッグ中は、この関数が返す3や5という数字が何を意味するのかが全く分かりません。 string s = EnumToString((ENUM_DEAL_TYPE) x) Кирилл Якимов 2022.04.17 05:07 #19474 Maxim Kuznetsov #: string s = EnumToString((ENUM_DEAL_TYPE) x) ありがとうございました、助かりました。 Ivan Butko 2022.04.17 12:36 #19475 1) 履歴をロードしていません。オンライン処理中にチャートウィンドウで、70 000分のバーをロードする時間がありました。Expert AdvisorをStrategy Testerに 読み込ませていますが、あるパターンに対して最小限のバー数を書き込んだだけで、「分析のためのバー数が不足しています」と回答されます。iBarsを 印刷すると、1200本と表示される。履歴を読み込んだ(8 000 000バー)。再起動したところ、ウィンドウと履歴に「99999999」のバーが表示されました。ノヴァは「歴史が足りない」と書いている。iBarsを印刷すると、また1200。これは何ですか、そしてどのように解決しますか? 2) 多通貨分析において、現在のチャートで突然相場が凍結され、OnTickがチェックを呼び出さない場合、他の通貨ペアの新しい着信ティックを見逃さないようにインジケータを強制するにはどうすればよいですか?OnTimerを試しましたが、テスターではうまくいきません Alexandr Sokolov 2022.04.18 08:54 #19476 このスクリプトでは、インデックス方向が 異なる動的配列のサイズ変更を試しています。配列のサイズを大きくすると、新しいセルがどちら側に現れるかを理解するためです。 void OnStart() { int a[], b[], size = 5, new_size = size + 5; if( ArraySize( a ) != size ) ArrayResize( a, size, 0 ); if( ArraySize( b ) != size ) ArrayResize( b, size, 0 ); if( ArrayGetAsSeries( a ) ) ArraySetAsSeries( a, false ); if( !ArrayGetAsSeries( b ) ) ArraySetAsSeries( b, true ); for( int i = 0; i < size; i++ ) { a[i] = i; b[i] = i; }; ArrayResize( a, new_size, 0 ); ArrayResize( b, new_size, 0 ); for( int i = 0; i < new_size; i++ ) { Alert( "a", i, " ", a[i] ); Alert( "b", i, " ", b[i] ); Alert(" "); }; } そして、その結果がこちらです。 配列 b[] (逆インデックスを持つ) は、サイズ を大きくすると、なぜか値が重複してしまうことが判明しました。何か見落としがあるのか、それとも何かの間違いなのか? JRandomTrader 2022.04.18 09:37 #19477 Alexandr Sokolov インデックスの方向が 異なる動的配列のサイズを変更する実験をしています。 そして、この結果が出ました。 配列 b[] (reverse indexing) はサイズを大きくすると何らかの形で値が重複することが分かりました。 なぜでしょうか?何か見落としがあるのか、それとも何かの間違いなのか? いずれにせよ、新しい配列のセルの値は当てになりません。これらは初期化されていない変数であり、どんなゴミが含まれていてもおかしくないからです。 Alexey Viktorov 2022.04.18 09:39 #19478 Alexandr Sokolov インデックスの方向が 異なる動的配列のサイズを変更する実験を行っています。 その結果がこれです。 (リバースインデックスの)配列 b[] はサイズを大きくすると何らかの形で値が重複することがわかりました。 なぜでしょうか?何か見落としがあるのか、それとも何かの間違いなのか? 配列が埋まった後に反転させる必要があります。 Alexandr Sokolov 2022.04.18 09:43 #19479 JRandomTrader #:いずれにせよ、新しい配列のセルの値は当てになりません。これらは初期化されていない変数なので、どんなゴミが含まれていてもおかしくないからです。 1) ミラーリングは、私の例のように5つのサイズだけでなく、他のサイズでも観察される 2) もし配列にリバースインデックスがあれば、新しいセルは配列の最初に現れるはずだが、そうではな い。 Alexandr Sokolov 2022.04.18 09:45 #19480 Alexey Viktorov #:アレイを埋めた後、反転させる必要があります。 私もそのように考えました。少なくとも、今のところ他の解決策は見当たりません。 1...1941194219431944194519461947194819491950195119521953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
アイテムのコストを考慮する必要があります
私はあなたにコードを与えることができますが、それを理解するのに長い時間がかかります、それは大きいです、また、マージンの最大可能ロットを考慮します。出来なければ質問します)))もちろん、ポイント値を考慮する必要がありますし、計算式も2段階式ではありません。用語を完全に理解していないと難しいし、前提条件の正しさを検証するのも時間がかかる)))契約の価値 = 貨幣日の1ロットの価値を計算))))
こんにちは、定数のリストからテキスト形式で値を返す方法をご教示ください。
例えば、HistoryDealGetInteger関数は、イベントの要求時にENUM_DEAL_TYPE リストの中からint値を返します。返された番号から、「DEAL_TYPE_CREDIT - クレジット発生」であるという情報を得るにはどうしたらよいですか。しかし、デバッグ中は、この関数が返す3や5という数字が何を意味するのかが全く分かりません。
こんにちは、定数のリストからテキストとして値を返す方法を教えてください。
例えば、HistoryDealGetInteger関数は、イベントの要求時にENUM_DEAL_TYPE リストの中からint値を返します。返された番号から、「DEAL_TYPE_CREDIT - クレジット発生」であるという情報を得るにはどうしたらよいですか。しかし、デバッグ中は、この関数が返す3や5という数字が何を意味するのかが全く分かりません。
string s = EnumToString((ENUM_DEAL_TYPE) x)
string s = EnumToString((ENUM_DEAL_TYPE) x)
1) 履歴をロードしていません。オンライン処理中にチャートウィンドウで、70 000分のバーをロードする時間がありました。Expert AdvisorをStrategy Testerに 読み込ませていますが、あるパターンに対して最小限のバー数を書き込んだだけで、「分析のためのバー数が不足しています」と回答されます。iBarsを 印刷すると、1200本と表示される。履歴を読み込んだ(8 000 000バー)。再起動したところ、ウィンドウと履歴に「99999999」のバーが表示されました。ノヴァは「歴史が足りない」と書いている。iBarsを印刷すると、また1200。これは何ですか、そしてどのように解決しますか?
2) 多通貨分析において、現在のチャートで突然相場が凍結され、OnTickがチェックを呼び出さない場合、他の通貨ペアの新しい着信ティックを見逃さないようにインジケータを強制するにはどうすればよいですか?OnTimerを試しましたが、テスターではうまくいきません
そして、その結果がこちらです。
配列 b[] (逆インデックスを持つ) は、サイズ
を大きくすると、なぜか値が重複してしまうことが判明しました。何か見落としがあるのか、それとも何かの間違いなのか?
いずれにせよ、新しい配列のセルの値は当てになりません。これらは初期化されていない変数であり、どんなゴミが含まれていてもおかしくないからです。
配列が埋まった後に反転させる必要があります。
いずれにせよ、新しい配列のセルの値は当てになりません。これらは初期化されていない変数なので、どんなゴミが含まれていてもおかしくないからです。
1) ミラーリングは、私の例のように5つのサイズだけでなく、他のサイズでも観察される
2) もし配列にリバースインデックスがあれば、新しいセルは配列の最初に現れるはずだが、そうではな い。
アレイを埋めた後、反転させる必要があります。
私もそのように考えました。少なくとも、今のところ他の解決策は見当たりません。