MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1483 1...147614771478147914801481148214831484148514861487148814891490...1953 新しいコメント Oleksandr Nozemtsev 2021.05.26 10:25 #14821 Alexey Viktorov:時刻と価格をピクセル単位のXY座標に変換することに注意行価を読み込んでピクセルに変換し、X座標はそのままに、 Y 軸の座標を「テキストマーク」オブジェクトに 割り当てます。 この機能にはずっと注目していたのですが、経験が浅いのでどうしたらいいか分かりませんでした。ありがとうございます、コードに統合してみます。 Oleksandr Nozemtsev 2021.05.26 10:27 #14822 Aleksei Stepanenko:Line And Text Indicator Ver 1 インジケータは、テキストをその行に追従して移動させます。入力パラメータに行名を挿入する。 ありがとうございます。これも面白いレイアウトですね。ChartTimePriceToXY()を理解したら、ぜひ取り出してみたいと思います。 Tretyakov Rostyslav 2021.05.26 11:09 #14823 何が問題なのか、教えてください。 for(int i=rates_total-prev_calculated-2;i>=0;i--) { ADRBuffer1[i]=High[i]; if(High[i]<ADRBuffer1[i+1]) ADRBuffer1[i]=ADRBuffer1[i+1]; ADRBuffer2[i]=Low[i]; if(Low[i]>ADRBuffer2[i+1]) ADRBuffer2[i]=ADRBuffer2[i+1]; } ローは引き分け、ハイは嫌がる...。 Alexey Viktorov 2021.05.26 12:30 #14824 MakarFX:何が問題なのか、教えてください。ローは引き分け、ハイは嫌がる...。 初回実行時のADRBuffer1[i+1]は何に相当するのでしょうか?おそらく、High[i]よりもゴミが多い。 Tretyakov Rostyslav 2021.05.26 12:40 #14825 Alexey Viktorov:初回実行時のADRBuffer1[i+1]は何に相当するのでしょうか?おそらく、High[i]よりもゴミが多いのでしょう。 修正方法とLowが正常に描画される理由を教えてください。 全てのコード #property indicator_chart_window #property indicator_buffers 3 #property indicator_type1 DRAW_LINE #property indicator_color1 clrDimGray #property indicator_style1 STYLE_SOLID #property indicator_width1 2 #property indicator_type2 DRAW_LINE #property indicator_color2 clrCrimson #property indicator_style2 STYLE_SOLID #property indicator_width2 1 #property indicator_type3 DRAW_LINE #property indicator_color3 clrTeal #property indicator_style3 STYLE_SOLID #property indicator_width3 1 //--- indicator buffers double ADRBuffer0[]; double ADRBuffer1[]; double ADRBuffer2[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorDigits(Digits); //--- indicator buffers mapping SetIndexBuffer(0,ADRBuffer0,INDICATOR_DATA); SetIndexBuffer(1,ADRBuffer1,INDICATOR_DATA); SetIndexBuffer(2,ADRBuffer2,INDICATOR_DATA); SetIndexLabel(0,"ADR"); SetIndexLabel(1,"ADR1"); SetIndexLabel(2,"ADR2"); //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { //--- if((rates_total-prev_calculated-2)<=0)return(0); for(int i=rates_total-prev_calculated-2;i>=0;i--) { ADRBuffer1[i]=High[i]; if(High[i]<ADRBuffer1[i+1]) ADRBuffer1[i]=ADRBuffer1[i+1]; ADRBuffer2[i]=Low[i]; if(Low[i]>ADRBuffer2[i+1]) ADRBuffer2[i]=ADRBuffer2[i+1]; } //--- return value of prev_calculated for next call return(rates_total); } //+------------------------------------------------------------------+ Alexey Viktorov 2021.05.26 13:57 #14826 MakarFX:ローが正常に描画される理由と修正方法を教えてください。コードの全体像 コンストラクションの数は必ず宣言しなければならない。そして、prev_calculate == 0を条件に、バッファの初期化を0にして書き込んでみてください。 Tretyakov Rostyslav 2021.05.26 14:09 #14827 Alexey Viktorov:建造物の数を申告することが義務付けられています。 これが何を意味するのか、残念ながら私にはよくわかりません。 Alexey Viktorov: また、prev_calculate == 0を条件に、バッファの初期化をゼロで書いてみてください。 役に立たなかった( PapaYozh 2021.05.26 15:22 #14828 MakarFX:私は残念ながら、その意味を理解していません。役に立たなかった( if( prev_calculated == 0 ) { ADRBuffer1[rates_total-1] = High[rates_total-1]; ADRBuffer2[rates_total-1] = Low[rates_total-1] } for(int i=rates_total-prev_calculated-2;i>=0;i--) { ... } Alexey Viktorov 2021.05.26 15:46 #14829 MakarFX:私は残念ながら、その意味を理解していません。役に立たなかった( #property indicator_plots 3 デフォルトは1です。また、工事件数を公表しても解決しない場合は、選択肢Bに進みます。 Tretyakov Rostyslav 2021.05.26 15:47 #14830 PapaYozh: ありがとうございます、助かりました...ちゃんとしてなかったです))) 1...147614771478147914801481148214831484148514861487148814891490...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
時刻と価格をピクセル単位のXY座標に変換することに注意
行価を読み込んでピクセルに変換し、X座標はそのままに、 Y 軸の座標を「テキストマーク」オブジェクトに 割り当てます。
この機能にはずっと注目していたのですが、経験が浅いのでどうしたらいいか分かりませんでした。ありがとうございます、コードに統合してみます。
Line And Text Indicator Ver 1
インジケータは、テキストをその行に追従して移動させます。入力パラメータに行名を挿入する。
ありがとうございます。これも面白いレイアウトですね。ChartTimePriceToXY()を理解したら、ぜひ取り出してみたいと思います。
何が問題なのか、教えてください。
ローは引き分け、ハイは嫌がる...。
何が問題なのか、教えてください。
ローは引き分け、ハイは嫌がる...。
初回実行時のADRBuffer1[i+1]は何に相当するのでしょうか?おそらく、High[i]よりもゴミが多い。
初回実行時のADRBuffer1[i+1]は何に相当するのでしょうか?おそらく、High[i]よりもゴミが多いのでしょう。
修正方法とLowが正常に描画される理由を教えてください。
全てのコード
ローが正常に描画される理由と修正方法を教えてください。
コードの全体像
コンストラクションの数は必ず宣言しなければならない。そして、prev_calculate == 0を条件に、バッファの初期化を0にして書き込んでみてください。
建造物の数を申告することが義務付けられています。
これが何を意味するのか、残念ながら私にはよくわかりません。
また、prev_calculate == 0を条件に、バッファの初期化をゼロで書いてみてください。
役に立たなかった(
私は残念ながら、その意味を理解していません。
役に立たなかった(
私は残念ながら、その意味を理解していません。
役に立たなかった(
デフォルトは1です。また、工事件数を公表しても解決しない場合は、選択肢Bに進みます。