初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 1245 1...123812391240124112421243124412451246124712481249125012511252...1503 新しいコメント 削除済み 2020.08.18 09:01 #12441 Artyom Trishkin:すべてのアレイの向きが同じとは限りません。 わかりますが、ArraySetAsSeries(barsBuffer1 ,true)もセットしています; ! まあ、これが悩みの種半分です。しかし、新しいキャンドルを 追加する方法がわかりません。 こんな風にやってみました。 ......... else { Print("tick_count = ",++tick_count); if(tick_count >= 5) { Print("Добавляем свечу."); double O[1], H[1], L[1], C[1]; O[0] = newCandles_Open[3]; H[0] = newCandles_High[3]; L[0] = newCandles_Low[3]; C[0] = newCandles_Close[3]; ArrayResize(barsBuffer1,ArraySize(barsBuffer1)+1); ArrayResize(barsBuffer2,ArraySize(barsBuffer2)+1); ArrayResize(barsBuffer3,ArraySize(barsBuffer3)+1); ArrayResize(barsBuffer4,ArraySize(barsBuffer4)+1); ArrayInsert(barsBuffer1,O,0); ArrayInsert(barsBuffer2,H,0); ArrayInsert(barsBuffer3,L,0); ArrayInsert(barsBuffer4,C,0); tick_count = 0; } } //--- return value of prev_calculated for next call return(rates_total); } うまくいかない...((( Artyom Trishkin 2020.08.18 09:07 #12442 Сергей Таболин:わかりますが、ArraySetAsSeries(barsBuffer1 ,true)もセットしています; !まあ、悩みは半分くらいですね。しかし、新しいキャンドルを 追加する方法 - 私は理解することはできません。こんな風にやってみました。うまくいかない...((( 申し訳ありませんが、インジケータ・バッファに割り当てられた配列は サイズ変更できません- 端末のサブシステムが行います。 SetIndexBuffer(0, barsBuffer1, INDICATOR_DATA); SetIndexBuffer(1, barsBuffer2, INDICATOR_DATA); SetIndexBuffer(2, barsBuffer3, INDICATOR_DATA); SetIndexBuffer(3, barsBuffer4, INDICATOR_DATA); ArrayResize(barsBuffer1,ArraySize(barsBuffer1)+1); ArrayResize(barsBuffer2,ArraySize(barsBuffer2)+1); ArrayResize(barsBuffer3,ArraySize(barsBuffer3)+1); ArrayResize(barsBuffer4,ArraySize(barsBuffer4)+1); 論理を再考してください。私は全く知らないので、目に余るほど間違っているところしか示せません。 削除済み 2020.08.18 09:14 #12443 Artyom Trishkin:もちろん、申し訳ありませんが、インジケータ・バッファに割り当てられた配列の サイズを 変更することはできません - これはターミナル・サブシステムによって処理されます。論理を再考してください。私は全く知らないので、露骨に間違っていることを示すことしかできません。 私もそのように理解していますが Artem、インジケーターバッファを サブシステムで制御しているということは、このサブシステムもサイズを大きくするということですか?つまり、新しいローソク足が表示されるまで、新しいインジケータ・ローソク足はチャートに描画できないのですか? Artyom Trishkin 2020.08.18 09:20 #12444 Сергей Таболин:私もそのように理解していますがArtemさん、インジケーターバッファを サブシステムで管理すると、そのサイズも大きくなるということですか?つまり、新しいローソク足がチャートに表示されるまでは、新しいインジケータのローソク足もチャートに描画できないのでしょうか? 新しいローソク足を引く」とはどういう意味ですか? 描画はできますが、バーを追加することはできません - まだ存在しません。 はい、インジケータアレイのサイズは端末が管理しています。また、そのうちの何人が前回の通話に参加していたかというデータも提供されます。 削除済み 2020.08.18 09:29 #12445 Artyom Trishkin:新しいキャンドルを描く」とはどういう意味ですか?いろいろ描けますが、バーはまだ存在しないので追加できません。はい、端末自体がインジケータ配列のサイズに気を配っています。また、そのうちの何人が前回の通話に参加していたかというデータも提供されます。 ありがとうございます、失敗する理由がわかりました。 では、最後にもう一つ質問です。別の時間枠のローソク足をインジケータに表示できることは知っています。H2からのローソク足とH1からのローソク足が表示されている場合、1本のローソク足が生きている間に 2本のローソク足を引く必要があることを意味します。バッファはシステムで増やすだけなのに、どうしてこうなるのでしょうか?もしくは、お手数ですが、例のリンクを教えてください。もしかしたら解るかもしれない )))) Artyom Trishkin 2020.08.18 09:53 #12446 Сергей Таболин:ありがとうございます、これでなぜうまくいかないのかがわかりました。では、最後にもう一つ質問です。インジケータに他の時間枠のローソク足を表示できることは知っています。H2からのローソク足が表示され、H1からのローソク足が表示されている場合、1つのローソク足の寿命の間に 2つのローソク足を描画する必要があることを意味します。バッファはシステムで増やすだけなのに、どうしてこうなるのでしょうか?もしくは、お手数ですが、例のリンクを教えてください。たぶん、わかると思います))) 指標については、最新の記事で例を挙げていますが、ライブラリベースのものです。 そして、1本ではなく2本のローソク足を描く方法を理解するために、チャートを見てみましょう。H2でローソク足が開いていた時間と、H1で同じ時間のローソク足がどこにあるか見てみましょう。すべてが明らかになる。 削除済み 2020.08.18 12:05 #12447 Artyom Trishkin:指標については、前回の記事で例を挙げましたが、いずれも図書館を利用したものです。そして、1本ではなく2本のローソク足の描き方を理解するために、チャートを見てみましょう。H2上のローソク足が開いた時間と、H1上の同じ時間のローソク足がどこにあるか見てみましょう。すべてが明らかになる。 アーテム、私にはそれがわからないのです。 例えば、H2のローソク足が12:00に開いているとします。次回は14:00からです。しかし、H1では次は13:00からになります。このロジックでは、ローソク足が上位のTFで開くまで、インジケータの配列は増加しません。インジケーターの2本目のローソク足が描けないということでしょうか?それとも何? 説明しろよ、不明瞭なたこ焼き......。1つのチャートに2本(実際にはn本)のローソク足が描ける理由と方法。インジケータバッファの 0番目のインデックスを新しい値で埋めても(単純な代入)、インジケータは変化しないのはなぜですか? そのような可能性を開発者に求めるべきかもしれませんね。このバッファに新しい要素を追加しました。これまでの要素をすべて左にずらして描画されます。やはり、私のインジケーターですね好きなように書いてます!チャートの新しいバーのオープニングにバインドしたくないのです。難しいですか? 削除済み 2020.08.20 05:58 #12448 ArtemとVladimirに感謝します。皆さんの回答や説明でイメージがわき、インジケーターが出来上がりました。また、ありがとうございました。 Sayberix 2020.08.21 17:34 #12449 何が問題なのか、教えていただけませんか? 単純な変数宣言が ある。 input double StopLoss=150.0; 実データでデバッグする場合、変数StopLossの設定値は「150」です。しかし、ヒストリカルデータのデバッグを有効にすると、同じコードの同じ変数が異なる値になっています。その理由は何でしょうか。そして、その問題にどう対処するか。 Alexey Viktorov 2020.08.21 17:52 #12450 Sayberix:何が問題なのか、教えていただけませんか?単純な変数宣言が ある。実データでデバッグする場合、変数StopLossの設定値は「150」です。しかし、ヒストリカルデータのデバッグを有効にすると、同じコードの同じ変数が異なる値になっています。その理由は何でしょうか。そして、その問題にどう対処するか。 ストラテジーテスターの「パラメータ」タブで値を確認します。実データ上でデバッグを有効にするとExpert Advisorは入力変数から値を取得し、履歴上で有効にするとテスター設定から値を取得します。 1...123812391240124112421243124412451246124712481249125012511252...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
すべてのアレイの向きが同じとは限りません。
わかりますが、ArraySetAsSeries(barsBuffer1 ,true)もセットしています; !
まあ、これが悩みの種半分です。しかし、新しいキャンドルを 追加する方法がわかりません。
こんな風にやってみました。
うまくいかない...(((
わかりますが、ArraySetAsSeries(barsBuffer1 ,true)もセットしています; !
まあ、悩みは半分くらいですね。しかし、新しいキャンドルを 追加する方法 - 私は理解することはできません。
こんな風にやってみました。
うまくいかない...(((
申し訳ありませんが、インジケータ・バッファに割り当てられた配列は サイズ変更できません- 端末のサブシステムが行います。
SetIndexBuffer(0, barsBuffer1, INDICATOR_DATA); SetIndexBuffer(1, barsBuffer2, INDICATOR_DATA); SetIndexBuffer(2, barsBuffer3, INDICATOR_DATA); SetIndexBuffer(3, barsBuffer4, INDICATOR_DATA);
ArrayResize(barsBuffer1,ArraySize(barsBuffer1)+1); ArrayResize(barsBuffer2,ArraySize(barsBuffer2)+1); ArrayResize(barsBuffer3,ArraySize(barsBuffer3)+1); ArrayResize(barsBuffer4,ArraySize(barsBuffer4)+1);
論理を再考してください。私は全く知らないので、目に余るほど間違っているところしか示せません。
もちろん、申し訳ありませんが、インジケータ・バッファに割り当てられた配列の サイズを 変更することはできません - これはターミナル・サブシステムによって処理されます。
論理を再考してください。私は全く知らないので、露骨に間違っていることを示すことしかできません。
私もそのように理解していますが
Artem、インジケーターバッファを サブシステムで制御しているということは、このサブシステムもサイズを大きくするということですか?つまり、新しいローソク足が表示されるまで、新しいインジケータ・ローソク足はチャートに描画できないのですか?
私もそのように理解していますが
Artemさん、インジケーターバッファを サブシステムで管理すると、そのサイズも大きくなるということですか?つまり、新しいローソク足がチャートに表示されるまでは、新しいインジケータのローソク足もチャートに描画できないのでしょうか?
新しいローソク足を引く」とはどういう意味ですか?
描画はできますが、バーを追加することはできません - まだ存在しません。
はい、インジケータアレイのサイズは端末が管理しています。また、そのうちの何人が前回の通話に参加していたかというデータも提供されます。
新しいキャンドルを描く」とはどういう意味ですか?
いろいろ描けますが、バーはまだ存在しないので追加できません。
はい、端末自体がインジケータ配列のサイズに気を配っています。また、そのうちの何人が前回の通話に参加していたかというデータも提供されます。
ありがとうございます、失敗する理由がわかりました。
では、最後にもう一つ質問です。別の時間枠のローソク足をインジケータに表示できることは知っています。H2からのローソク足とH1からのローソク足が表示されている場合、1本のローソク足が生きている間に 2本のローソク足を引く必要があることを意味します。バッファはシステムで増やすだけなのに、どうしてこうなるのでしょうか?もしくは、お手数ですが、例のリンクを教えてください。もしかしたら解るかもしれない ))))
ありがとうございます、これでなぜうまくいかないのかがわかりました。
では、最後にもう一つ質問です。インジケータに他の時間枠のローソク足を表示できることは知っています。H2からのローソク足が表示され、H1からのローソク足が表示されている場合、1つのローソク足の寿命の間に 2つのローソク足を描画する必要があることを意味します。バッファはシステムで増やすだけなのに、どうしてこうなるのでしょうか?もしくは、お手数ですが、例のリンクを教えてください。たぶん、わかると思います)))
指標については、最新の記事で例を挙げていますが、ライブラリベースのものです。
そして、1本ではなく2本のローソク足を描く方法を理解するために、チャートを見てみましょう。H2でローソク足が開いていた時間と、H1で同じ時間のローソク足がどこにあるか見てみましょう。すべてが明らかになる。
指標については、前回の記事で例を挙げましたが、いずれも図書館を利用したものです。
そして、1本ではなく2本のローソク足の描き方を理解するために、チャートを見てみましょう。H2上のローソク足が開いた時間と、H1上の同じ時間のローソク足がどこにあるか見てみましょう。すべてが明らかになる。
アーテム、私にはそれがわからないのです。
例えば、H2のローソク足が12:00に開いているとします。次回は14:00からです。しかし、H1では次は13:00からになります。このロジックでは、ローソク足が上位のTFで開くまで、インジケータの配列は増加しません。インジケーターの2本目のローソク足が描けないということでしょうか?それとも何?
説明しろよ、不明瞭なたこ焼き......。1つのチャートに2本(実際にはn本)のローソク足が描ける理由と方法。インジケータバッファの 0番目のインデックスを新しい値で埋めても(単純な代入)、インジケータは変化しないのはなぜですか?
そのような可能性を開発者に求めるべきかもしれませんね。このバッファに新しい要素を追加しました。これまでの要素をすべて左にずらして描画されます。やはり、私のインジケーターですね好きなように書いてます!チャートの新しいバーのオープニングにバインドしたくないのです。難しいですか?
ArtemとVladimirに感謝します。皆さんの回答や説明でイメージがわき、インジケーターが出来上がりました。また、ありがとうございました。
何が問題なのか、教えていただけませんか?
単純な変数宣言が ある。
実データでデバッグする場合、変数StopLossの設定値は「150」です。しかし、ヒストリカルデータのデバッグを有効にすると、同じコードの同じ変数が異なる値になっています。その理由は何でしょうか。そして、その問題にどう対処するか。
何が問題なのか、教えていただけませんか?
単純な変数宣言が ある。
実データでデバッグする場合、変数StopLossの設定値は「150」です。しかし、ヒストリカルデータのデバッグを有効にすると、同じコードの同じ変数が異なる値になっています。その理由は何でしょうか。そして、その問題にどう対処するか。
ストラテジーテスターの「パラメータ」タブで値を確認します。実データ上でデバッグを有効にするとExpert Advisorは入力変数から値を取得し、履歴上で有効にするとテスター設定から値を取得します。