[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 1075

 

皆さん、こんにちは。モメンタムヒストグラムが欲しい。ヒストグラムをどなたか教えていただけませんか?

ありがとうございます。

 
fozi:

皆さん、こんにちは。モメンタムヒストグラムが欲しい。ヒストグラムをどなたか教えていただけませんか?

ありがとうございます。

https://www.mql5.com/ru/forum/111497/page1075
線でもヒストグラムでも、視覚的なものを除いては、ポイントは変わりません。
 
つまり、ビジュアルが必要なのです
 
fozi:
つまり、ビジュアルが必要なのです
ファイル:
 

過度な動きを検出するこの機能は正しいですか?

extern int CandleVolume=60 - 直前のローソク足のサイズが60pips以上である場合。

------ 直前のローソクの出来高を確認する機能

int CheckVolume()
{

int volume=MathAbs(NormalizeDouble(Low[1],Digits)-NormalizeDouble(High[1],Digits));

if (volume <= CandleVolume) return (1);

if (volume > CandleVolume) return (-1);

}

--------以下のようにチェックしてください。

if(CalculateCurrentOrders(Symbol())==0&& CheckVolume())==1)

{CheckForOpen();}。

 

もう一つの質問:前のバーを確認しようとしています。買いチェック - アスクが直前のバーの高値+スプレッドより高いこと。売りチェック - 買値が直前のバーの安値からスプレッドを引いた値より低い場合。この機能はどの程度正しいのでしょうか?残念ながら、うまくいきません。

int CheckBar()
{
double Spread=MarketInfo(Symbol(),MODE_SPREAD);
double PriceBuy=Ask;
double PriceSell=Bid;
if(PriceSell<(Low[1]-Spread)) return(-1);
if(PriceBuy>(High[1]+Spread)) return(1);
}
 
dzhini:

もう一つの質問:前のバーを確認しようとしています。買いチェック - アスクが直前のバーの高値+スプレッドより高いこと。売りチェック - 買値が直前のバーの安値からスプレッドを引いた値より低い場合。この機能はどの程度正しいのでしょうか?残念ながら、うまくいきません。


int CheckBar(){   
   double Spread=MarketInfo(Symbol(),MODE_SPREAD);   
   double PriceBuy=Ask;   
   double PriceSell=Bid;   
   if(PriceSell   < (Low[1]  - Spread*Point)) return(-1);   
   if(PriceBuy  > (High[1] + Spread*Point)) return(1);
   return(0);
}
 
dzhini:

もう一つの質問:前のバーを確認しようとしています。買いチェック - アスクが直前のバーの高値+スプレッドより高いこと。売りチェック - 買値が直前のバーの安値からスプレッドを引いた値より低い場合。 この機能はどの程度正しいのでしょうか?残念ながら、うまくいきません。

スプレッドはよく浮いてしまうので、全く使いません...。
 
Vinin:

ありがとうございました。効いてますね。私の知識ベースへ ))))直前のローソクの大きさを定義する関数をどうするか、アドバイスをお願いします。

extern int CandleVolume=60 - 直前のローソク足のサイズが60pips以上である場合。

------ 直前のローソクの出来高をチェックする機能

int CheckVolume()
{

int volume=MathAbs(NormalizeDouble(Low[1],Digits)-NormalizeDouble(High[1],Digits));

if (volume <= CandleVolume) return (1);

if (volume > CandleVolume) return (-1);

}

--------以下のようにスタート時に確認します。

if(CalculateCurrentOrders(Symbol())==0&& CheckVolume())==1)

{CheckForOpen();}。

 
AlexSTAL:
スプレッドは浮くことが多いので、全く使いません...


これは問題ないです。ティックごとに新しいスプレッドを要求することで、問題は解決されます。スプレッドが変動 する証券会社にお勤めの方は、1ティックごとにミニレートをお願いしてみても損はないでしょう。

SPR=MarketInfo(Symbol(),MODE_SPREAD);
MinLevel=MarketInfo(Symbol(),MODE_STOPLEVEL);