[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 274

 
Vinin:

Надо всю логику переделывать. Довольно запутано сделано. И наверно для начала стоит отказаться от объектов и рисовать через индикаторные буферы

Мне нужно рисовать и наперед в историю (т.е вправо от нулевого бара), а через буфыры я не понял, как так сделать. В чем он запутанный?.. Хотя я уже привык так писать, может другим труднее читать :)

PapaYozh:

Вот, что пишет у меня:

2011.10.18 22:28:19 TEST__ EURGBP,H1: y=1 Time[y]=2011.08.04 08:00
2011.10.18 22:28:17 TEST__ EURGBP,H1: y=1 Time[y]=2011.08.03 08:00
2011.10.18 22:28:15 TEST__ EURGBP,H1: y=1 Time[y]=2011.08.02 08:00
2011.10.18 22:28:13 TEST__ EURGBP,H1: y=15 Time[y]=2011.08.01 08:00

Код:

Т.е. как бы все верно.

Это Вы запустили индюка, закрыли МТ с ним, потом открыли и оно все нормально вывело?

 

помогите подкоректировать советник



avatar
5
folw 19.10.2011 09:56

Плиз помогите подкоректировать советник. Он откривает отложение ордера. Мне нужно чтоб он удалял отложений ордер который не сработал после вихода 2 новых сигналов и так все время.

пример:1сигнал-ставится отлож ордер

2-сигнал-тоже ставится ордер

3-сигнал ставится ордер и удаляется 1 ордер если он не сработал.

Советник лучше работает на 15м тайме.

если будут еще идеи как его усовершенствовать буду рад увидеть?

ПРикрепляю советник!!!!

Файлы:
main_1.ex4  7 kb
 
Solree:

Мне нужно рисовать и наперед в историю (т.е вправо от нулевого бара), а через буфыры я не понял, как так сделать.

Это Вы запустили индюка, закрыли МТ с ним, потом открыли и оно все нормально вывело?


Скажите, что означает "закрыли/открыли"?

Завершили работу MT через "Файл"->"Выход" либо нажатием [X] ?

Если так, то в момент запуска МТ нет части истории и индикатор отрабатывает на неполной истории. А когда история подгрузится - индикатор уже отработал свой цикл и ждёт следующих суток.

 
PapaYozh:

Почему должно? Откуда нам знать что у Вас в Open[i-2] ?

Наверное, Вы пропустили. Посмотрите, пожалуйста, ещё раз - вверху выдержки то, что Вы спрашиваете, было указано. Повторю ещё раз:

i = 2, Open[i-2] = 1.5715
14:21:15 2011.01.12 18:08 Мои Фр Чекулаева1 GBPUSD,M1: Low[i] = 1.5713, Low[i-1] = 1.5714
14:21:15 2011.01.12 18:08 Мои Фр Чекулаева1 GBPUSD,M1: Low[i+1] = 1.5714, Low[i-2] = 1.5715
14:21:15 2011.01.12 18:08 Мои Фр Чекулаева1 GBPUSD,M1: Open[i-2]-(Low[i]-1*PointX) = 0.0004

14:21:15 2011.01.12 18:08 Мои Фр Чекулаева1 GBPUSD,M1: 1*PointX = 0.0001

15-(13-1) должно быть 3. А в тестере выходит 4. Что не так ?

 
PapaYozh:


Скажите, что означает "закрыли/открыли"?

Завершили работу MT через "Файл"->"Выход" либо нажатием [X] ?

Если так, то в момент запуска МТ нет части истории и индикатор отрабатывает на неполной истории. А когда история подгрузится - индикатор уже отработал свой цикл и ждёт следующих суток.

Вооооооо! Это уже ближе к проблеме. А как заставить его подождать? Помню пробовал на 1 тик его заморозить при запуске, но увы, не сработало. Паузу сделать просто на пару секунд в начале? Пробую сейчас сделать Sleep, оно вообще игнорирует эту функцию...
 
globad:
Здрасте! Ребята помогите пожалуйста! Нужен советник, который повторяет действия с одного счета или терминала на другом. Слышал про такие где-то. Причем необходимо, чтобы он не просто повторял действия, а совершал их наоборот. Т.е., если на первом счете куплено, на втором нужна продажа. Короче, локи чтоб делал на разных счетах. Заточить пытаюсь под керри трейд с двух счетов. Может быть есть что-то готовое или похожее рабочее. Заранее благодарю.
Это называется дубликатор сделок. Лучше заказать у какого-нибудь программиста под свою задачу, чем покупать где-то. Я года 2 назад спрашивал у одного программиста - поищите в поисковике -----------, сразу выйдете на его сайт. Можно и здесь найти программиста, который имеет опыт в создании дубликаторов.
 
Добрый день.
Скажите пожалуйста, у меня советник одновременно открывает два ордера: оба бай или оба селл. Один с тейк профитом фиксированным, другой тралится.
Иногда бывает что второй ордер не успевает открываться.
Как решить данную проблему ?
Решит ли проблему открытие второго терминала и открывать по одному ордеру в каждом терминале ?
Или открыть второй счет и открывать один ордер на одном счете, второй на другом ?
 

Подскажите пожалуйста (или можно ссылку, если где об этом уже говорили) как в одном окне отобразить две линии одного индикатора разных

тайм-фреймов. Например:

/-------------------------------------------------------------------+  
   switch(Period())   
        { 
         case     1: PeriodSlow=PERIOD_M5; break; //            для -Таймфрейма М1
         case     5: PeriodSlow=PERIOD_M15; break;//                -Таймфрейма М5
         case    15: PeriodSlow=PERIOD_H1; break; //                -Таймфрейма М15 т.е. след. период Н1
         case    30: PeriodSlow=PERIOD_H1; break; //                -Таймфрейма М30
         case    60: PeriodSlow=PERIOD_H4; break; //                -Таймфрейма H1
         case   240: PeriodSlow=PERIOD_D1; break; //                -Таймфрейма H4
         case  1440: PeriodSlow=PERIOD_W1; break; //                -Таймфрейма D1
         case 10080: PeriodSlow=PERIOD_MN1; break;//                -Таймфрейма W1
         case 43200: PeriodSlow=PERIOD_W1; break; //                -Таймфрейма МN
        }                                    
//-------------------------------------------------------------------+ 
   PeriodFast = 0; 
   return(0);
  }
//+------------------------------------------------------------------+
int start()
  {
   double MaSlow,MaFast; // SlowMa-MA большего периода, FastMa-MA текущего периода
   int limit, CountedBars=IndicatorCounted();
   
   if(CountedBars>0) CountedBars--;
   limit=Bars-CountedBars;
   if(limit>History) limit=History;
   
    for(int i=0; i<limit; i++)
     {
      MaSlow=iMA(NULL,PeriodSlow,MAPeriod,0,MODE_SMA,PRICE_HIGH,i);      
      MaFast=iMA(NULL,PeriodFast,MAPeriod,0,MODE_SMA,PRICE_HIGH,i); 
      LineSlow[i]=MaSlow;      
      LineFast[i]=MaFast; 
     } 
//---- done
    return(0);
  }
//+------------------------------------------------------------------+

В этом случае при при обновлении через некоторое время взаимное расположение линий меняется

 

Как вывести в Print сообщение о request? Пример сообщений из журнала:

2011.10.19 13:04:11 '183927376': order buy 0.01 EURGBP opening at 0.8768 sl: 0.0000 tp: 0.8822 failed [Trade timeout]

2011.10.19 13:00:52 '183927376': request in process

в течение 3,5 минут получается, что отсутствовала связь с сервером.

У меня в советнике выводятся на экран все сообщения об ошибках. Но эта остается без реакции советника, а хотелось бы фиксировать время отсутствия связи в секундах.

 
Stells:
Добрый день.
Скажите пожалуйста, у меня советник одновременно открывает два ордера: оба бай или оба селл. Один с тейк профитом фиксированным, другой тралится.
Иногда бывает что второй ордер не успевает открываться.
Как решить данную проблему ?
Решит ли проблему открытие второго терминала и открывать по одному ордеру в каждом терминале ?
Или открыть второй счет и открывать один ордер на одном счете, второй на другом ?
Они все равно открываются не одновременно, а последовательно. "Не успевает открываться" прежде чем что? Ордер откроется, но все зависит от быстродействия обработки ордеров брокером. Может пройти иногда несколько минут, посмотрите мой предыдущий пост. 3.5 минуты отсутствовала связь с брокером, а когда это произойдет - в момент установки последовательности ордеров или уже после установки - никто предсказать не сможет.
Причина обращения: