[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 224

 
Dmido >>:

Добавьте в код функцию контроля нового бара. Тогда в рамках одной свечи откроется только одна позиция. При этом в условии на открытие укажите New_Bar()==true

bool New_Bar()
  {
   static int PrevTime =0;
   if(PrevTime==iTime(NULL,0,0)) return(false);
   PrevTime=iTime(NULL,0,0);     return(true);
  }
 

Господа знатоки. Ищу какой-нибудь старенький ЕА, чтоб открывал от Open два Limit/Stop ордера в обе стороны на расстоянии N (типа Straddle) каждый час (день) чтобы поэкспериментировать.

Ничего на память не приходит?

 
Привет. ВОпрос такой: существует ли индикатор, показывающий скорость (ускорение) цены пары? Цель - помощь в торговле на новостях. Есть ли что-нибудь подобное?
 
Rucobor >>:
 Привет. ВОпрос такой: существует ли индикатор, показывающий скорость (ускорение) цены пары? Цель - помощь в торговле на новостях. Есть ли что-нибудь подобное?
Читай старину Билли.. его индикаторы измеряют и скорость, и ускорение..
 

Есть линия тренда, построенная по нескольким точкам на истории (зеленая). Надо продлить ее проекцию (красная на фото):




По зеленой рассчитываем коэффициент" к" для у=к*х .

Затем берем допустим 20 баров и по известным "к" и времени (Период * 20 * 60) рассчитываем точку "у".

Потом по времени для 20-го бара и полученному "у" чертим линию тренда.

- Это будет работать, пока не попадется момент с пропущенными барами (выходные или праздники) или еще что.

В итоге фактическое время 20-го изображенного бара будет бОльшим и наклон будет неверен.

- Есть какое-нибудь простое решение?





 
Alex5757000 писал(а) >>

Добавьте в код функцию контроля нового бара. Тогда в рамках одной свечи откроется только одна позиция. При этом в условии на открытие укажите New_Bar()==true

https://www.mql5.com/en/market/mt4/expert

 
forex-k >>:


как проще определить точку пересечения цены и трендовой линии? без трехмерных массивов.

Вот всетаки получилось склепать то что и хотел и без сложных массивов для Н1

//+------------------------------------------------------------------+
int start()
{
if(ObjectGet("TREND",OBJ_TREND)==0)
{
ObjectCreate("TREND",OBJ_TREND, 0,TimeCurrent()-60*60*100,Bid-50*Point,TimeCurrent(),Bid+50*Point);
ObjectSet("TREND",OBJPROP_COLOR,Aquamarine);
}
double cdelta=ObjectGet("TREND",OBJPROP_PRICE2)-ObjectGet("TREND",OBJPROP_PRICE1);
double tdelta=((ObjectGet("TREND",OBJPROP_TIME2)-ObjectGet("TREND",OBJPROP_TIME1))/60)/60;
if(TimeHour(ObjectGet("TREND",OBJPROP_TIME2))!=Hour())
ObjectMove("TREND",1,TimeCurrent(),(ObjectGet("TREND",OBJPROP_PRICE2)+cdelta/tdelta));
}
//+------------------------------------------------------------------+

 

forex-k писал(а) >>



 
forex-k >>:




а теперь осталось вписать условие для пересечения 

int digits=MarketInfo(Symbol(),MODE_DIGITS);
if(NormalizeDouble(Bid,digits-2)==NormalizeDouble(ObjectGet("TREND",OBJPROP_PRICE2),digits-2))

{
PlaySound("Wait.wav");

Sleep(1000);

}

Файлы:
 
chief2000 >>:


В итоге фактическое время 20-го изображенного бара будет бОльшим и наклон будет неверен.



а что, есть гарантия, что при построении зеленой линии не было пропущенных баров? если упомянутой гарантии нет, то вопрос о верности-неверности наклона как бы сам собой и отпадает за бессмысленностью...

Причина обращения: