初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 780 1...773774775776777778779780781782783784785786787...1503 新しいコメント Vladimir Karputov 2017.09.14 20:57 #7791 LookingFor: for(bars=start; bars<rates_total; bars++)同僚、助けてくださいループの何が問題なのか理解できません。Handleからのデータは配列psa1には入りません。OnInit()では、以下のようにします。 ArraySetAsSeries(pca1,true);の後、ループを適宜変更してください。 for(bars=start; bars<rates_total; bars++)今、あなたのインジケーターの一番右のバーがインデックス "0 "であることを考えます。 Aliaksandr Yemialyanau 2017.09.15 05:45 #7792 任意のキーまたは特定のキーを押して、スクリプトを終了させるには? LookingFor 2017.09.15 11:44 #7793 ウラジミールさん、ありがとうございます。インデックスを変更 せずにできることはないのでしょうか? Vladimir Karputov 2017.09.15 11:51 #7794 LookingFor:ウラジミールさん、ありがとうございます。インデックスを変更 せずに何かできないのでしょうか?何もしたくないのであれば、過去のデータでデバッグしてテストを始めましょう。ステップ・バイ・ステップバーがコピーされたWHEREのデータをご覧ください。 Vladimir Karputov 2017.09.15 12:15 #7795 LookingFor:同僚、助けてくださいループの何が問題なのか理解できません。Handleからのデータは配列psa1には入りません。LookingFor: ウラジミール、ありがとう。でも、 インデックスを変更 しないと何もできないの?まず、人間が読めるコードにする必要があります(Styler - ソースコードを扱う - プログラム開発 - MetaEditor)//+------------------------------------------------------------------+ //| 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(prev_calculated==0) { i=bars=start=1; } else { start=prev_calculated; } for(bars=start; bars<rates_total; bars++) { CopyBuffer(pulse_Handle,0,start,1,pca1); if(pca1[bars]!=pca1[bars-1]) { pca2[i]=pca1[bars]; i++; string s=""; s=IntegerToString(pca1[bars])+" "; Print(s); continue; } else continue; } //--- return value of prev_calculated for next call return(rates_total); }CopyBuffer関数から何が返されたかを確認する必要があります。CopyBufferを 参照してください。戻り値コピーされた配列の要素数,あるいはエラーの場合は -1.さらに、ブレークポイントを設定し、過去のデータでデバッグを実行します。といくつかの変数を制御します。time[rates_total-1] time[0] bars pca1[???]デフ Стилизатор - Работа с исходным кодом - Разработка программ - Справка по MetaEditor www.metatrader5.com Данная функция предназначена для оформления исходного кода в соответствии с рекомендуемым стандартом. Это позволяет сделать код более читаемым... Vitaly Muzichenko 2017.09.16 08:46 #7796 Aに変換するのに役立つdouble GetExtremumZZPrice(string symb="0",ENUM_TIMEFRAMES tf=0,int ne=0,int dp=12,int dv=5,int bs=3) { if(symb=="0") symb=Symbol(); double zz; int ke=0; for(int i=0; i<Bars(symb, tf)-1; i++) { zz=iCustom(symb, tf, "ZigZag", dp, dv, bs, 0, i); if(zz!=0) { ke++; if(ke>ne) return(zz); }} return(0); } Alexey Viktorov 2017.09.16 09:31 #7797 Vitaly Muzichenko:Aに変換するのに役立つインジケータ・バッファを読み込み、得られた配列の中から zz を探します。 Документация по MQL5: Доступ к таймсериям и индикаторам / CopyBuffer www.mql5.com Доступ к таймсериям и индикаторам / CopyBuffer - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 削除済み 2017.09.16 14:48 #7798 Vitaly Muzichenko:Aに変換するのに役立つ まずはインジケーターハンドルを手に入れる!次にCopyBufferを使って 目的の値の配列を取得し、それをループさせます。 Vitaly Muzichenko 2017.09.16 15:24 #7799 皆さん、ありがとうございました。もう一つの質問ですが、フォーラムやkodobaseに目を通しましたが、「Trend.mqh」のアプリケーションが見つかりません、全てあるようですが。アプリケーションのリンクがあれば、ここに送るか、コードによる例を教えてください。Rsi、Ma、Adhなどを使ったEAはたくさん ありますが、SBを使っているものはありませんでした。それは本当にそんなに悪いですか、私はコードを発見していない、誰がそれを使用する?必要なもの:コードがあり、その中で私はいくつかの時間枠からMAを取得します。_ma1 = iMA(Symbol,PERIOD_M15,MAFast,0,MAMethod,MAPrice,i) _ma2 = iMA(Symbol,PERIOD_M30,MAFast,0,MAMethod,MAPrice,i) _ma3 = iMA(Symbol,PERIOD_H1, MAFast,0,MAMethod,MAPrice,i)OnInitでmql5に数十のハンドルを作成するのではなく、うまくいけばSBが私の問題を解決してくれるでしょう。 Vladimir Karputov 2017.09.16 15:43 #7800 Vitaly Muzichenko:皆さん、ありがとうございました。もう一つの質問ですが、フォーラムやkodobaseに目を通しましたが、「Trend.mqh」のアプリケーションが見つかりません、全てあるようですが。アプリケーションのリンクがあれば、ここに送るか、コードによる例を教えてください。Rsi、Ma、Adhなどを使ったEAはたくさんありますが、SBを使っているものはありませんでした。そんなに悪いのか、それともコードを発見していないのか、誰が使っているのか?必要なもの:コードがあり、その中で私はいくつかの時間枠からMAを取得します。mql5のOnInitで数十個のハンドルを作成するのではなく、SBが私の問題を解決してくれることを願っています。Trend.mqh::CiMA」クラスのハンドルまたはオブジェクトを すべて作成する必要があります。 1...773774775776777778779780781782783784785786787...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
for(bars=start; bars<rates_total; bars++)
同僚、助けてください
ループの何が問題なのか理解できません。Handleからのデータは配列psa1には入りません。
OnInit()では、以下のようにします。
の後、ループを適宜変更してください。
for(bars=start; bars<rates_total; bars++)
今、あなたのインジケーターの一番右のバーがインデックス "0 "であることを考えます。
任意のキーまたは特定のキーを押して、スクリプトを終了させるには?
ウラジミールさん、ありがとうございます。インデックスを変更 せずに何かできないのでしょうか?
何もしたくないのであれば、過去のデータでデバッグしてテストを始めましょう。ステップ・バイ・ステップバーがコピーされたWHEREのデータをご覧ください。
同僚、助けてください
ループの何が問題なのか理解できません。Handleからのデータは配列psa1には入りません。
ウラジミール、ありがとう。でも、 インデックスを変更 しないと何もできないの?
まず、人間が読めるコードにする必要があります(Styler - ソースコードを扱う - プログラム開発 - MetaEditor)
CopyBuffer関数から何が返されたかを確認する必要があります。CopyBufferを 参照してください。
戻り値
さらに、ブレークポイントを設定し、過去のデータでデバッグを実行します。
といくつかの変数を制御します。
デフ
Aに変換するのに役立つ
Aに変換するのに役立つ
インジケータ・バッファを読み込み、得られた配列の中から zz を探します。
Aに変換するのに役立つ
皆さん、ありがとうございました。
もう一つの質問ですが、フォーラムやkodobaseに目を通しましたが、「Trend.mqh」のアプリケーションが見つかりません、全てあるようですが。アプリケーションのリンクがあれば、ここに送るか、コードによる例を教えてください。
Rsi、Ma、Adhなどを使ったEAはたくさん ありますが、SBを使っているものはありませんでした。それは本当にそんなに悪いですか、私はコードを発見していない、誰がそれを使用する?
必要なもの:コードがあり、その中で私はいくつかの時間枠からMAを取得します。
OnInitでmql5に数十のハンドルを作成するのではなく、うまくいけばSBが私の問題を解決してくれるでしょう。
皆さん、ありがとうございました。
もう一つの質問ですが、フォーラムやkodobaseに目を通しましたが、「Trend.mqh」のアプリケーションが見つかりません、全てあるようですが。アプリケーションのリンクがあれば、ここに送るか、コードによる例を教えてください。
Rsi、Ma、Adhなどを使ったEAはたくさんありますが、SBを使っているものはありませんでした。そんなに悪いのか、それともコードを発見していないのか、誰が使っているのか?
必要なもの:コードがあり、その中で私はいくつかの時間枠からMAを取得します。
mql5のOnInitで数十個のハンドルを作成するのではなく、SBが私の問題を解決してくれることを願っています。
Trend.mqh::CiMA」クラスのハンドルまたはオブジェクトを すべて作成する必要があります。