[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 331

 
sergeev:

для программистов.

они так переключать программно могут валюту, таймфрейм или левый бар.


Спасибо, а где можно прочитать как это работает?
 
vitali_yv:
Спасибо, а где можно прочитать как это работает?
думаю что в MSDN
 
vitali_yv:
Спасибо, а где можно прочитать как это работает?
Это Алексей так шутит. В справке МТ4 всё есть.
 
Zhunko:
Это Алексей так шутит. В справке МТ4 всё есть.
да, описание и назначение окна есть.
но я ответил про использование из кода. а без API не сделать.
 
sergeev:
да, описание и назначение окна есть.
но я ответил про использование из кода. а без API не сделать.
:-)) Растут читатели этой темы. ТАКИЕ вопросы уже задают...
 
подскажите плз код.. как узнать самую вискокую и самую низкую цену сегодня с 5 к 8 утра.
 

Здравствуйте! Подскажите плиззз как прописать в советнике, чтобы при возникновении условий для открытия ордера один раз открывал ордер, в следующий раз открывал только при формирмировании противоположных условий?

 
ZZZEROXXX:

1. Как определить прибыльность/убыточность последней сделки?

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


1. Привожу пример организации кода у себя в сове:

int time = 0;  // время (разместить в глобальных переменных (до старта) - факт работы только с последним закрытым ордером


//---Поиск последнего отработавшего ордера для открытия очередной позиции ---
   
   for (orderIndex = (OrdersHistoryTotal() - 1); orderIndex >= 0; orderIndex--)
   {   
      if (!OrderSelect(orderIndex, SELECT_BY_POS, MODE_HISTORY))
      {
         Print("Ошибка при доступе к исторической базе (",GetLastError(),")");
         continue;
      }
   
      if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != MagicNumber))
      {
         continue;
      }
      
        
   //-------------------------Принимаем в расчет только ордер, закрытый недавно-----------------------
if(time<OrderCloseTime())     //(сравниваем его с хранящимся в пероеменной time) 
  {
    time=OrderCloseTime();     //если время закрытия ордера больше - ложим его в переменную
         
         
     
         int lastType = OrderType();
         double lastLots = OrderLots();
         double lastProfit = OrderProfit() + OrderSwap();
         
        // Print ("lastProfit = ", NormalizeDouble(lastProfit, 1));
         
       
         
         // Анализ только что закрывшегося ордера
      
         if (lastProfit >= 0.0)
         {
  //---Ордер закрылся с прибылью - сюда действия при выполнении этого условия
         }
         else
         {
            // Ордер закрылся с убытком - сюда действия при выполнении этого условия (дальше фигурные скобочки сами расставите).
.....
.....
.....
 
           

2. С учетом спреда - нажмите в окне тестера стратегий справа вверху на дощечку Symbol и ознакомьтесь с содержимым выпадающего окна.

 
maryan.dirtyn:
подскажите плз код.. как узнать самую вискокую и самую низкую цену сегодня с 5 к 8 утра.
через iHighest/iLowest
 
SeALALex:

Здравствуйте! Подскажите плиззз как прописать в советнике, чтобы при возникновении условий для открытия ордера один раз открывал ордер, в следующий раз открывал только при формирмировании противоположных условий?

считать количество ваших ордеров.
Причина обращения: