MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1813

 
Alexander Avksentyev #:

価格-SLレベル

そして

は、許容される最小限のSLと比較しています。

さらに先のクリアな視界が得られると仮定して。

正しくないなら、間違っている。

計算したものを正規化しろということですが、MarketIで得られた情報はすでに読み取れるものなのですか?普通に比較されるでしょう。

はい?

いいえ

doubleNormalizeDouble(
double

(Bid - sl_lev)

// 正規化される数


int

Digits

// 小数点以下の桁
);

 
Kedrov #:

皆さん、こんにちは。

助けてください!

common_srは、昨日の最大値/最小値を今日のみ、現在の期間について表示するインジケータです。すなわち、これらのレベル、境界線は、昨日の日には表示されません - 今日だけです。そして、これは正しい!

そして、同じように前週の最大値/最高値を示すインジケータが、前週にもそれらを描画している。論理的には、現在の週だけを描画するはずですが。

これらの考えをスクリーンショットで表現してみました。何か質問があれば、お答えします。

何らかの形で修正されるのでしょうか?

どうもありがとうございました。

ファイル:
common_sr.mq4  39 kb
 

Alexander Avksentyev #:

これからもっと鮮明になると仮定して。


double price=NormalizeDouble(Bid - sl_lev,Digits);
if(price < MarketInfo(Symbol(),MODE_STOPLEVEL) * Point) return;
 
Tretyakov Rostyslav #:

ロスティスラフ!

ご心配いただき、ありがとうございます

そして、その結果に対して!

ありがとうございました。

がんばってください。

 
Tretyakov Rostyslav #:

ロスティスラフ!

そして、この「電流」はmq4コードに恒久的に挿入することができます。必要なTFをその都度設定しないこと。成功したわけではありません。

 
Kedrov #:

ロスティスラフ!

そして、この「電流」はmq4コードに恒久的に挿入することができます。必要なTFをその都度設定しないこと。私には効果がありませんでした。

コード冒頭のこの行

input ENUM_TIMEFRAMES Precision=PERIOD_D1; // Precision   PERIOD_H1

に置き換えてください。


input ENUM_TIMEFRAMES Precision=PERIOD_CURRENT; // Precision   PERIOD_H1
 
Tretyakov Rostyslav #:

コード冒頭のこの行

に置き換える


ロスティスラフさん、ありがとうございました。

すべてうまくいきました

がんばってください。

 

また、MakarFHがRostislavになった経緯も教えてください。

どこが調和しているのか...全くないのか?

 
Maxim Kuznetsov #:

また、MakarFHがRostislavになった経緯も教えてください。

どこに子音があるんだ......何かあるのか?

デコンパイル)

 

皆さん、こんにちは。アドバイスをお願いします。

シグナルラインとヒストグラムの標準的なMACDで クロスオーバーを計算しようとしているのですが、どうすればいいのでしょうか?このアイデアは、新しいバーごとに、2つ前のローソク足を取り、それぞれの指標値を取得することです。2番目のキャンドル上のMACD値が信号値よりも大きく、最初のキャンドル上のMACD値がすでに信号の下にあり、すべての値が0を超えている場合、それは上にクロスオーバーがあることを意味し、逆も同様である。

しかし、その価値を手に入れる瞬間は、なんだかとても大きなものになるのです。そしてたった一つ、2本目のローソク足のシグナルライン。どの程度までなら8、4.5、7などでもよい。次のバーが現れたとき、新しいバーから2本目のバーのシグナルラインの値はすでに正常であることができます。その他はすべて正しいことが判明。また、データウィンドウでは、その値も正しく表示されています。その理由がわからない。私は何を間違えているのだろう?

PrevMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_MAIN,1);
PrevSignalMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);
CtrlMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_MAIN,2);
CtrlSignalMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_SIGNAL,2);

Сomment(CtrlMACD+" "+CtrlSignalMACD+" "+PrevMACD+" "+PrevSignalMACD);

可変ダブルのことかなという感じはします。データウィンドウの値は0,000081ですが、それは8,1....、私は別の値で気づいた同じことなので - データウィンドウ0,000071で、しかし変数で7,1....。しかし、それらはすべてダブル変数として定義されています。

ファイル: