Подскажите как сделать рассчет Нi-Low за последние 15 баров,чтоб небыло зависимости от текущего таймфрейма?
Hi=High[iHighest(Symbol(),PERIOD_D1,MODE_HIGH,14,0)];
Lo=Low[iLowest(Symbol(),PERIOD_D1,MODE_LOW,14,0)];
1)Объявляешь буфера Hi[15] Low[15]
2)Через for записываешь туда данные.
for(int i=0;i<15;i++)
{
Hi=iHigh(Symbol(),Period_D1,i);
...
}
А понял. Просто iHighest
У меня не вышло... Наверно я не правильно сформулировал вопрос.Может и не так,но сделал так:
{
double Hi,Lo;
int Bar=14;
if (Period()==PERIOD_M1){Bar=(KolBar*1440);}
if (Period()==PERIOD_M5){Bar=(KolBar*288);}
if (Period()==PERIOD_M15){Bar=(KolBar*96);}
if (Period()==PERIOD_M30){Bar=(KolBar*48);}
if (Period()==PERIOD_H1){Bar=(KolBar*24);}
if (Period()==PERIOD_H4){Bar=(KolBar*6);}
if (Period()==PERIOD_D1){Bar=(KolBar*1);}
if (Period()==PERIOD_W1){Bar=(KolBar/7);}
Hi=High[iHighest(Symbol(),PERIOD_CURRENT,MODE_HIGH,Bar,0)];
Lo=Low [iLowest(Symbol(),PERIOD_CURRENT,MODE_LOW,Bar,0)];
}
Если кого не затруднит,скажите пожалуйста как сделать что-то наподобии такого и возможно-ли:
extern string Cross1 = "EURAUD"; // Кросс 1
extern string Cross2 = "CADCHF"; // Кросс 2
string Symb1 = " ..."; // Название инструмента 1
string Symb2 = "..."; // Название инструмента 2
string Symb3 = "..."; // Название инструмента 3
string Symb4 = "..."; // Название инструмента 4
{
if (Cross1="EURGBP")
{
Symb1="EURUSD";
Symb2="GBPUSD";
}
if (Cross2=="CADCHF")
{
Symb3="USDCAD";
Symb4="USDCHF";
}
}