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

 
Alexey Belyakov:

こんにちは。

簡単な問題を解決するのを手伝ってください。

隙間カウンター。10ポイント以上のギャップをカウントしたい。

変数 "gap "はゼロにリセットされる。その理由がわからない。もう全部試しました。ループやスタティックも試しましたが、うまくいきません。ループの書き方が間違っていたのでは?

#property strict
#property script_show_inputs

input int GapInPips   =  100;
input int GapCount    =  10;
//+------------------------------------------------------------------+
void OnStart()
{
   int i = 1, gap = 0;
   while(i < Bars && gap < GapCount && !IsStopped())
   {
      int r = (int)(MathAbs(Close[i + 1] - Open[i]) / Point);
      if (r >= GapInPips)
      {
         gap++;
         Print("ГЭП!========: ", gap, " , ВЕЛИЧИНА ГЭПА==: ", r, ", время гэпа = ", Time[i]);
      }
      i++;
   }
}
//+------------------------------------------------------------------+

0 09:36:28.169 t EURUSD,H1: GAP!========: 1 , GAP EXPECTATION====: 182, gap time = 2020.06.15 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 2 , GAP VALUE====: 112, gap time = 2020.06.01 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 3 , GAP VALUE====: 134, gap time = 2020.05.11 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 4 , GAP VALUE====: 225, gap time = 2020.04.13 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 5 , GAP VALUE====: 192, gap time = 2020.03.30 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 6 , GAP VALUE====: 100 , ギャップ時間 = 2020.03.24 23:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 7 , GAP VALUE====: 926, gap time = 2020.03.16 00:00.00

0 09:36:28.169 t EURUSD,H1: GAP!========: 8 , GAP VALUE====: 602, gap time = 2020.03.09 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 9 , GAP VALUE====: 136, gap time = 2020.03.02 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 10 , GAP VALUE====: 242, gap time = 2020.02.24 00:00:00

 

なぜi+1が 無限ループでスクリプトを開始するのかがわからないのですが?下部の警告 - 表現には効果がないが、効果はある)

string com=""; // объявление глобальной переменной для хранения информации для отладки
//---
void OnStart(void)
  {
   for(int i=0; i<10; i+1)
     {
      myfunc();
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void myfunc()
  {
//--- объявление статического счетчика
   static int cnt=0;
//--- сохранение информации для отладки в глобальную переменную
   com=(__FUNCSIG__+" cnt="+(string)cnt+"\n")+com;
   Comment(com); // вывод информации для отладки
//---
   cnt++;
//---
  }
 
awsomdino:

なぜi+1が 無限ループでスクリプトを開始するのかがわからないのですが?下部の警告 - 表現には効果がないが、効果はある)

i+1ではiの値が増えないため

i++またはi+=1のどちらかにする必要があります。

 
皆さん、こんにちは。前日の終値で指標の読み取り値(日移動平均)を計算するにはどうしたらいいですか?感謝
Moving Average of Oscillator (OsMA)
Moving Average of Oscillator (OsMA)
  • www.mql5.com
On Balance Volume (OBV) Индикатор Балансового Объема (On Balance Volume, OBV) связывает объем и изменение цены, сопровождавшее данный объем. Momentum Индикатор движущей силы рынка (Momentum) измеряет величину изменения цены финансового инструмента за определенный...
 
Carcass77:
皆さん、こんにちは。前日終値での指標値(日移動平均)の計算方法は?感謝

計算するのか、受け取るのか?MQL5 or 4 ?

 
Artyom Trishkin:

計算するのか、受け取るのか?MQL5 or 4 ?

MQL4 ゲット

 
Carcass77:

MQL4取得

期間14、シフト0の単純移動平均で、現在のシンボルの日足チャートの終値を使用して計算されます。最初のバーの値を取る(0は現在の日)。

double ma_day1=iMA(Symbol(),PERIOD_D1,14,0,MODE_SMA,PRICE_CLOSE,1);
 
Artyom Trishkin:

現在のシンボルの日足チャートの終値から計算される、期間14、シフト0の単純移動平均 です。最初のバーの値を取ります(0は現在の日)。

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

 
Igor Makanu:

0 09:36:28.169 t EURUSD,H1: GAP!========: 1 , GAP VALUE====: 182, gap time = 2020.06.15 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 2 , GAP VALUE====: 112, gap time = 2020.06.01 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 3 , GAP VALUE====: 134, gap time = 2020.05.11 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 4 , GAP VALUE====: 225, gap time = 2020.04.13 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 5 , GAP VALUE====: 192, gap time = 2020.03.30 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 6 , GAP VALUE====: 100 , ギャップ時間 = 2020.03.24 23:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 7 , GAP VALUE====: 926, gap time = 2020.03.16 00:00.00

0 09:36:28.169 t EURUSD,H1: GAP!========: 8 , GAP VALUE====: 602, gap time = 2020.03.09 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 9 , GAP VALUE====: 136, gap time = 2020.03.02 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!======: 10 , GAP VALUE====: 242, GAP Time = 2020.02.24 00:00:00

もしかして、変種を間違えた?コピーしました。何もない、ログに結果もない。

 
Alexey Belyakov:

もしかして、間違ったバージョンを送ってしまったのでは?コピーしました。何もない、ログに結果もない。

それは、正しいものです。

あとは、どの雑誌で自分のプリントの結果を見ているか、専門家のタブを見るだけです。