MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1897 1...189018911892189318941895189618971898189919001901190219031904...1953 新しいコメント Tretyakov Rostyslav 2022.02.13 14:50 #18961 EVGENII SHELIPOV #:こんにちは。毎日のフラクタルの値を、その値や縦線で表示しています。線は表示されず、値は0となります。以下はコードの一部です。 何が問題なのか、教えてください。 値が0なので、n本のローソク足の後にフラクタルが形成されます。 Valeriy Yastremskiy 2022.02.13 14:55 #18962 Vitaly Muzichenko #:利用可能なすべての履歴のための配列、それは必要ありません。文字通り50~100本の棒が必要なんです。こんな感じ。 インジケーターのポイントは何でしょうか?もちろん秘密でなければ)問題は時間表示にある。つまり、リアルティックの時間ではなく、ナンバーの時間です。TFのそれぞれのバー上の数字。 Vitaly Muzichenko 2022.02.13 15:03 #18963 Valeriy Yastremskiy #:インジケーターのポイントは何でしょうか?もちろん秘密でなければですが)そこで問題になるのは、もちろん時刻表示です。つまり、本当の刻限ではなく、数字の刻限なのです。TFのバーにはそれぞれの数字が書かれています。 ポイントは、オープンチャートで最後のティックを見ることです :) P.S. * AskとBidの変更について マーケットウォッチと同様 EVGENII SHELIPOV 2022.02.13 15:07 #18964 Tretyakov Rostyslav #:値が0なので、n本のロウソクを境にフラクタルが形成される 新しい極限がなく、3本の小節の後にそれらが0、1、2であれば、フラクタルが形成されます。 double FractalDayUpper = iFractals(Symbol(), PERIOD_D1, MODE_UPPER, 2); ObjectCreate("signal00",OBJ_LABEL,0,0,0,0,0); ObjectSet("signal00",OBJPROP_XDISTANCE,600); ObjectSet("signal00",OBJPROP_YDISTANCE,100); 何も変わっていない。 あるいは、また何かが間違っている。 Mihail Matkovskij 2022.02.13 15:24 #18965 Vitaly Muzichenko #:やった、うまくいった。---なんか、このサイクルはなくてもいいんじゃないかと思う。本当ですか? 私の知る限り、MQLにはシフト機能はないようです。だから、シフトはループの力を借りないとできない。なぜ似合わないのか? P.S. 余分な配列のことですが、必要ありませんでした。あなたは正しくシフトして、バッファに入札値を書き込んでいるのです Mihail Matkovskij 2022.02.13 15:32 #18966 EVGENII SHELIPOV #:こんにちは。毎日のフラクタルの値を、その値や縦線で表示しています。線は表示されず、値は0となります。以下はコードの一部です。 何が問題なのか、教えてください。 なぜ、ゼロバーのフラクタルがゼロでないはずだと確信できるのでしょうか?いつまでたっても、あるだけで0にならない! Tretyakov Rostyslav#: 値が0であるため、n本のロウソクを経てフラクタルが形成される また、このようなことは、常に起こるわけでは ありません。n番目のバーがフラクタルである場合のみ! Valeriy Yastremskiy 2022.02.13 15:37 #18967 Vitaly Muzichenko #:意味は、オープンチャートで最後のティックを見ること :)P.S. * AskとBidの変更についてマーケットウォッチと同様 スピード対策を考えていたのですが))) Artyom Trishkin 2022.02.13 15:39 #18968 Vitaly Muzichenko #:意味は、オープンチャートで最後のティックを見ること :)P.S. * AskとBidの変更についてマーケットウォッチと同様 ArrayCopy() の何が問題なのでしょうか? Документация по MQL5: Операции с массивами / ArrayCopy www.mql5.com ArrayCopy - Операции с массивами - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Mihail Matkovskij 2022.02.13 15:46 #18969 Artyom Trishkin #: ArrayCopy() は良い解決策ではない? ArrayCopy:ある配列から別の配列にコピーするためのものです。そして、ここでは各目盛りを追加する前に値をシフトする必要があります。したがって、ループを使うことでしか解決できない。 Vitaly Muzichenko 2022.02.13 15:53 #18970 Artyom Trishkin #: ArrayCopy() はあなたに合わない? これの使い方、教えてください。 これが課題です。 トレーディング、自動売買システム、ストラテジーテストに関するフォーラム MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 ヴィタリー・ムジチェンコ, 2022.02.13 15:42 利用可能な全履歴のための配列は必要ない。 文字通り50~100本必要 このように 以下は準備中のコードですが、ループがちょっと怖いです。 #property indicator_separate_window #property indicator_buffers 2 #property indicator_plots 2 #property indicator_type1 DRAW_LINE #property indicator_color1 clrDodgerBlue #property indicator_label1 "Bid" #property indicator_type2 DRAW_LINE #property indicator_color2 clrRed #property indicator_label2 "Ask" double Buffer1[]; double Buffer2[]; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void OnInit() { SetIndexBuffer(0,Buffer1); ArraySetAsSeries(Buffer1,true); SetIndexBuffer(1,Buffer2); ArraySetAsSeries(Buffer2,true); ArrayInitialize(Buffer1,EMPTY_VALUE); ArrayInitialize(Buffer2,EMPTY_VALUE); IndicatorSetInteger(INDICATOR_DIGITS,Digits()); IndicatorSetString(INDICATOR_SHORTNAME,"Tick:"); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ 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[]) { int H=100; if(prev_calculated==0) { ArrayInitialize(Buffer1,EMPTY_VALUE); ArrayInitialize(Buffer2,EMPTY_VALUE); } if(rates_total-prev_calculated==1) { Buffer1[H+1]=EMPTY_VALUE; Buffer2[H+1]=EMPTY_VALUE; } double b=SymbolInfoDouble(Symbol(),SYMBOL_BID); double a=SymbolInfoDouble(Symbol(),SYMBOL_ASK); Buffer1[0]=b; Buffer2[0]=a; for(int j=H; j>0; j--) { Buffer1[j]=Buffer1[j-1]; Buffer2[j]=Buffer2[j-1]; } return(rates_total); } //+------------------------------------------------------------------+ --- 繰り返しますが、ArrayCopy() の内部にはループがあり、おそらく複数のループが存在します。そのため、この置き換えによってコードが軽量化・高速化されることはほとんどありません。 1...189018911892189318941895189618971898189919001901190219031904...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは。
毎日のフラクタルの値を、その値や縦線で表示しています。線は表示されず、値は0となります。
以下はコードの一部です。
何が問題なのか、教えてください。
値が0なので、n本のローソク足の後にフラクタルが形成されます。
利用可能なすべての履歴のための配列、それは必要ありません。
文字通り50~100本の棒が必要なんです。
こんな感じ。
インジケーターのポイントは何でしょうか?もちろん秘密でなければ)問題は時間表示にある。つまり、リアルティックの時間ではなく、ナンバーの時間です。TFのそれぞれのバー上の数字。
インジケーターのポイントは何でしょうか?もちろん秘密でなければですが)そこで問題になるのは、もちろん時刻表示です。つまり、本当の刻限ではなく、数字の刻限なのです。TFのバーにはそれぞれの数字が書かれています。
ポイントは、オープンチャートで最後のティックを見ることです :)
P.S. * AskとBidの変更について
マーケットウォッチと同様
値が0なので、n本のロウソクを境にフラクタルが形成される
新しい極限がなく、3本の小節の後にそれらが0、1、2であれば、フラクタルが形成されます。
何も変わっていない。
あるいは、また何かが間違っている。
やった、うまくいった。
---
なんか、このサイクルはなくてもいいんじゃないかと思う。
本当ですか?
私の知る限り、MQLにはシフト機能はないようです。だから、シフトはループの力を借りないとできない。なぜ似合わないのか?
P.S. 余分な配列のことですが、必要ありませんでした。あなたは正しくシフトして、バッファに入札値を書き込んでいるのです
こんにちは。
毎日のフラクタルの値を、その値や縦線で表示しています。線は表示されず、値は0となります。
以下はコードの一部です。
何が問題なのか、教えてください。
なぜ、ゼロバーのフラクタルがゼロでないはずだと確信できるのでしょうか?いつまでたっても、あるだけで0にならない!
値が0であるため、n本のロウソクを経てフラクタルが形成される
また、このようなことは、常に起こるわけでは ありません。n番目のバーがフラクタルである場合のみ!
意味は、オープンチャートで最後のティックを見ること :)
P.S. * AskとBidの変更について
マーケットウォッチと同様
スピード対策を考えていたのですが)))
意味は、オープンチャートで最後のティックを見ること :)
P.S. * AskとBidの変更について
マーケットウォッチと同様
ArrayCopy() は良い解決策ではない?
ArrayCopy:ある配列から別の配列にコピーするためのものです。そして、ここでは各目盛りを追加する前に値をシフトする必要があります。したがって、ループを使うことでしか解決できない。
ArrayCopy() はあなたに合わない?
これの使い方、教えてください。
これが課題です。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。
ヴィタリー・ムジチェンコ, 2022.02.13 15:42
利用可能な全履歴のための配列は必要ない。
文字通り50~100本必要
このように
以下は準備中のコードですが、ループがちょっと怖いです。
---
繰り返しますが、ArrayCopy() の内部にはループがあり、おそらく複数のループが存在します。そのため、この置き換えによってコードが軽量化・高速化されることはほとんどありません。