MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 433 1...426427428429430431432433434435436437438439440...1953 新しいコメント Boss11 2018.01.23 10:43 #4321 Alekseu Fedotov: というくらいにシンプルです。void OnStart() { // Формируем время Alert("14.30 позавчерашнего дня = ",StrToTime(TimeToStr(iTime(NULL,1440,2),TIME_DATE)+" "+"14:30")); //14.30 позавчерашнего дня datetime time=StrToTime(TimeToStr(iTime(NULL,1440,2),TIME_DATE)+" "+"14:30"); //Бар 14.30 позавчерашнего дня int shift=iBarShift(NULL,0,time); //Машка 14.30 позавчерашнего дня double ma=iMA(NULL,0,13,0,MODE_SMMA,PRICE_MEDIAN,shift); Alert("Машка 14.30 позавчерашнего дня = ",DoubleToString(ma,Digits));こんな感じです。アレクセウ・フェドートフ 残念ながら、これではありません。TFでバーナンバーを取得し、同じTFを使っても、もう一つ必要(ここが問題)。我々は、TF(例えば30)とバー番号を取得し、次にTF(1440)とMAを取得する必要があり、TF 30とこのバーから始まる。 それはあなたが今(14.30)TF 1440とMAを取得したい場合のようなものです。今は-問題ないが、数日前に移すとなると、それはそれで問題だ。 Boss11 2018.01.23 10:57 #4322 STARIJ: M1、M5、......と使っていけばいいんです。- を確認する。mt5にはティック履歴があるので、補間を使うといいかもしれません。利益が出る場所を教えていただければ、もう一度見てみます。今起きていることとして遡及的にテクニカル分析を行い、結果を見る必要がありますね。つまり、昨日14時30分にTF1dでMAのテクニカル分析を行い、今日は昨日のMAによる値動きの結果が出たということです。 今日TF1440を使って昨日の視点で見れば、テクニカル分析のデータが異なるので、結果も異なることが予想されるのです。 Alexey Viktorov 2018.01.23 11:13 #4323 Roman Sharanov:ローソク足の高値から200p上のポイントに矩形を 描き、1本先の時間を計りたいのですが、どうすればよいですか?コードを書いたのですが、なぜ長方形の左の点が動かないのかがわかりません?右はハイの後ろにスライドさせる。関数の予期せぬ動作...先ほど、すでに存在するオブジェクトの名前を付けて作成しようとしたところ、エラーが返され、既存のパラメータを新しいものに変更することができませんでした。しかし、現在はどうやら変更が加えられているようで、high[0]が変更されたり、新しいバーが現れるたびに、high[1]はすでに異なる値を持っており、新しい長方形を作成する際にパラメータの1つが変更されます。方法はとても簡単で、オブジェクトを作成する前に存在を確認することです。 Roman Sharanov 2018.01.23 11:36 #4324 STARIJ:移動するいいえ、このコードでは何も描画しません。 Konstantin Erin 2018.01.23 12:49 #4325 Roman Sharanov: いいえ、このコードでは何も描画されません。私のファイル全体を見てください。 ファイル: PR.mq4 3 kb Roman Sharanov 2018.01.23 13:05 #4326 STARIJ:私のファイルを見てくださいなるほど、MQL4をお持ちなのですね :) 時系列で配列を作ったらうまくいった、なぜうまくいかなかったのかがまだわからない Konstantin Erin 2018.01.23 13:08 #4327 Boss11: 今起きていることとして遡及的にテクニカル分析を行い、結果を見る必要がありますね。つまり、昨日14時30分にTF1dでMAのテクニカル分析を行い、今日は昨日のMAによる値動きの結果が出たとして、今日TF1440を使って昨日の視点で見れば、テクニカル分析のデータが異なるので、結果も異なることが予想される。TF1440はすべてクリアですが、M1は誤差が大きいとお書きになっていますが? Boss11 2018.01.23 13:29 #4328 STARIJ:TF1440ではすべてクリアーですが、M1では大きな誤差があるとのことですが?M1では試していませんが、誤差が少なくなるのではと思います。M1->M5は、M30->1dよりも精度が高くなります。 wisor2006 2018.01.23 17:29 #4329 具体的な質問に対する答えをアドバイスしてください。ボリンジャーをやり直します。数行の変更で、バーが描画されない。なんだ、対数か。https://research-journal.org/economical/analiz-razlichnyx-metodov-ocenki-istoricheskoj-volatilnosti-dlya-opcionnoj-torgovli/ からのボラティリティの計算式int start() { int i,k,counted_bars=IndicatorCounted(); double deviation; double sum,oldval,newres,oldpos; //---- if(Bars<=BandsPeriod) return(0); //---- initial zero if(counted_bars<1) for(i=1;i<=BandsPeriod;i++) { MovingBuffer[Bars-i]=EMPTY_VALUE; UpperBuffer[Bars-i]=EMPTY_VALUE; LowerBuffer[Bars-i]=EMPTY_VALUE; } //---- int limit=Bars-counted_bars; if(counted_bars>0) limit++; for(i=0; i<limit; i++) MovingBuffer[i]=iMA(NULL,0,BandsPeriod,BandsShift,MODE_EMA,PRICE_WEIGHTED,i); //---- i=Bars-BandsPeriod+1; if(counted_bars>BandsPeriod-1) i=Bars-counted_bars-1; while(i>=0) { sum=0.0; k=i+BandsPeriod-1; oldval=MovingBuffer[i]; oldpos=i; while(k>=i) { //newres=Close[k]-oldval; //sum+=newres*newres; sum+=log(fabs(High[k]/Close[k]))*log(fabs(High[k]/Open[k]))+log(fabs(Low[k]/Close[k]))*log(fabs(Low[k]/Open[k])); k--; } deviation=BandsDeviations*MathSqrt(fabs(sum/BandsPeriod)); UpperBuffer[i]=oldval+deviation; LowerBuffer[i]=oldval-deviation; i--; } ファイル: BS_Bands_TRO.mq4 24 kb WinProject 2018.01.24 16:52 #4330 グラフィカルオブジェクトを削除 する方法を教えてください。変数値から名前が構成される縦線があります。 string name=="test1"; string Vertline="line_"+name; ObjectCreate(0,VertLine,OBJ_VLINE,0,time,cena); test1という名前の縦線だけを削除するにはどうしたらよいでしょうか? 1...426427428429430431432433434435436437438439440...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
というくらいにシンプルです。
こんな感じです。
アレクセウ・フェドートフ 残念ながら、これではありません。TFでバーナンバーを取得し、同じTFを使っても、もう一つ必要(ここが問題)。我々は、TF(例えば30)とバー番号を取得し、次にTF(1440)とMAを取得する必要があり、TF 30とこのバーから始まる。 それはあなたが今(14.30)TF 1440とMAを取得したい場合のようなものです。今は-問題ないが、数日前に移すとなると、それはそれで問題だ。
M1、M5、......と使っていけばいいんです。- を確認する。mt5にはティック履歴があるので、補間を使うといいかもしれません。利益が出る場所を教えていただければ、もう一度見てみます。
今起きていることとして遡及的にテクニカル分析を行い、結果を見る必要がありますね。つまり、昨日14時30分にTF1dでMAのテクニカル分析を行い、今日は昨日のMAによる値動きの結果が出たということです。 今日TF1440を使って昨日の視点で見れば、テクニカル分析のデータが異なるので、結果も異なることが予想されるのです。
ローソク足の高値から200p上のポイントに矩形を 描き、1本先の時間を計りたいのですが、どうすればよいですか?
コードを書いたのですが、なぜ長方形の左の点が動かないのかがわかりません?右はハイの後ろにスライドさせる。
関数の予期せぬ動作...先ほど、すでに存在するオブジェクトの名前を付けて作成しようとしたところ、エラーが返され、既存のパラメータを新しいものに変更することができませんでした。しかし、現在はどうやら変更が加えられているようで、high[0]が変更されたり、新しいバーが現れるたびに、high[1]はすでに異なる値を持っており、新しい長方形を作成する際にパラメータの1つが変更されます。
方法はとても簡単で、オブジェクトを作成する前に存在を確認することです。
移動する
いいえ、このコードでは何も描画しません。
私のファイル全体を見てください。
私のファイルを見てください
なるほど、MQL4をお持ちなのですね :)
時系列で配列を作ったらうまくいった、なぜうまくいかなかったのかがまだわからない
TF1440はすべてクリアですが、M1は誤差が大きいとお書きになっていますが?
TF1440ではすべてクリアーですが、M1では大きな誤差があるとのことですが?
M1では試していませんが、誤差が少なくなるのではと思います。M1->M5は、M30->1dよりも精度が高くなります。
具体的な質問に対する答えをアドバイスしてください。ボリンジャーをやり直します。
数行の変更で、バーが描画されない。なんだ、対数か。
https://research-journal.org/economical/analiz-razlichnyx-metodov-ocenki-istoricheskoj-volatilnosti-dlya-opcionnoj-torgovli/ からのボラティリティの計算式
グラフィカルオブジェクトを削除 する方法を教えてください。変数値から名前が構成される縦線があります。
string name=="test1"; string Vertline="line_"+name; ObjectCreate(0,VertLine,OBJ_VLINE,0,time,cena); test1という名前の縦線だけを削除するにはどうしたらよいでしょうか?