Условие для торговли на пробой экстремумов предыдущего дня - страница 2

 
это готовый советник, работает отложками и там нет условия о котором я писал
 
Vitaly Muzichenko:
Ну у вас все карты в руках "iLow(Symbol(), PERIOD_D1, 1)>iLow(Symbol(), PERIOD_D1, 0)" значит был пробит, а сегодняшний после открытия пишите в глобальную переменную и по ней сравнивайте сегодняшний день.
так и не смог разобраться с глобальными переменными.. можете показать пример на моем случае? 
 
Sergey Lapshov:
так и не смог разобраться с глобальными переменными.. можете показать пример на моем случае? 

Если на примере, то вот функция, создаёт имя (чтоб не было переплетений) 

//===============================================================================================
//----------------------- Создает и возвращает имя глобальной переменной -----------------------+
//===============================================================================================
string GetGlobalVariableName(string name="") {
  if(!IsTesting()) {
   return(Symbol()+"_"+(string)AccountInfoInteger(ACCOUNT_LOGIN)+"_"+name);
  } else {
   return(Symbol()+"_"+(string)AccountInfoInteger(ACCOUNT_LOGIN)+"_tester"+"_"+name);
 }}

 Потом вначале нового дня пишете хай и лоу в глоб.переменную

if(NewDay) {
  GlobalVariableSet(GetGlobalVariableName("HIGH"), iHigh(Symbol(),PERIOD_D1,1));
  GlobalVariableSet(GetGlobalVariableName("LOW"), iLow(Symbol(),PERIOD_D1,1));
}

Тут идёт чтение записанных значений и сравнение между текущим и записанным

if( GlobalVariableGet(GetGlobalVariableName("HIGH")) >= iHigh(Symbol(),PERIOD_D1,0)) { ... }
if( GlobalVariableGet(GetGlobalVariableName("LOW")) <= iLow(Symbol(),PERIOD_D1,0)) { ... }
Alert( GlobalVariableGet(GetGlobalVariableName("LOW")) +" | "+ GlobalVariableGet(GetGlobalVariableName("HIGH")));