Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 104

 
hoz:

У Вас тут вообще абы что. Начнём с того, что закрытие шорта всегда по АСКу, а не по БИДу.

Разобрался. Все просто
     Price = NormalizeDouble(Ask, Digits); // округляем до нужного нам числа цифр после запятой
     if(StopLoss > 0)
      {
       SL = iHigh(Symbol(),0,1)+30*Point; // вычисляем стоплос
       SL = NormalizeDouble(SL, Digits); // округляем до нужного нам числа цифр после запятой
      }
 
Вопрос ко всем форумчанам. Вышеназванный код работает по всем парам - пять цифр после запятой, но по иеновым - 3 цифры после запятой стоп лоссы не выставляются. Почему?
 
alexey1979621:

Разобрался. Все просто Вопрос ко всем форумчанам. Вышеназванный код работает по всем парам - пять цифр после запятой, но по иеновым - 3 цифры после запятой стоп лоссы не выставляются. Почему?
https://book.mql4.com/ru/appendix/limits
 
artmedia70:
Я уже написал пример функции.

В примере забыл вписать одну проверку:

if (OrderType()>1)            continue;            // Сначала забыл вписать, подправил

Подправил в своём посте

 

Юсуф, а у вас клавиша на клавиатуре не зажата случаем? Ну там Shift или Ctrl?

У меня было подобное несколько лет назад, клавишу ESC уголком книги придавило, и я не знал что случилось, комп необычно на нажатия клавиш реагировал.

И еще: клавиатура чаем/кофе/апельсиновым соком никогда не заливалась?

 
i_logic:
И еще: клавиатура чаем/кофе/апельсиновым соком никогда не заливалась?

Можно продолжить:

Котики-собачки не шалили? Головой по клаве/клавой по голове ни-ни? :)))

 
Бгг))
 
Подскажите пожалуйста: у брокера по паре EUR/USD пять цифр после запятой в ценах, фракталы выдают 4, причем и стоковые и кастомные. Причем пятую цифру не округляют, а именно отбрасывают. Что - то я не сталкивался с этой темой нигде... Может, есть способ задать количество знаков после запятой?
 
Trendy:
Подскажите пожалуйста: у брокера по паре EUR/USD пять цифр после запятой в ценах, фракталы выдают 4, причем и стоковые и кастомные. Причем пятую цифру не округляют, а именно отбрасывают. Что - то я не сталкивался с этой темой нигде... Может, есть способ задать количество знаков после запятой?
DoubleToStr(число,разрядность) вам в помощь
 
Sepulca:

Ну я же уже написал, а сейчас уже и протестировал, работает


Добрый день!

Извините, что поднимаю сравнительно давнюю тему. С кодом стало все понятно.

Теперь у меня загвоздка, как открыть сделку. К примеру, сразу после заданного диапазона ищем

цену меньше максимума, на определенное количество пунктов. Входим в сделку.

Попробовал добавить вот такой код и прогнать в тестере, не открываются сделки.

Как быть?

МОЙ КОД, КОТОРЫЙ НУЖНО ДОБАВИТЬ:

signal = Maximum - iClose(Symbol(),Period(),0);
if (signal > 0.0012)
        {                                          
        Opn_S=true;                  
        }
ВАШ КОД:
int start(){
 int StartHour=8,StartMinute=1;// Время 08:01
 int StopHour=23,StopMinute=58; // Время 23:58
 int StartTime=StartHour*60+StartMinute;
 int StopTime=StopHour*60+StopMinute;
 int CurrentMinutesFromDayStart=Hour()*60+Minute();// Текущее время в минутах от начала дня
 if(CurrentMinutesFromDayStart>=StartTime && CurrentMinutesFromDayStart<=StopTime) {
  // Для торговли внутри дня
 }
// Ищем максимум
 datetime td=iTime(Symbol(),PERIOD_D1,0);// Время открытия дневного бара в секундах от 01.01.1970
 int start=0;// Если конец временного диапазона ещё не наступил, начинаем поиск максимума с текущего бара
 if(CurrentMinutesFromDayStart>StopTime) {
  datetime ts=td+StopTime*60;// конец временного диапазона в секундах от 01.01.1970
  start= iBarShift(Symbol(),PERIOD_M1,ts,false);// смещение бара, которому принадлежит ts
 }
 int count=0;// Сколько баров до StartTime
 if(CurrentMinutesFromDayStart>StartTime) {
  ts=td+StartTime*60;// начало временного диапазона в секундах от 01.01.1970
  count= iBarShift(Symbol(),PERIOD_M1,ts,false);// смещение бара, которому принадлежит ts
  count= count-start;// Сколько баров длится временной интервал
 }
 double Maximum=iHigh(Symbol(),PERIOD_M1,iHighest(Symbol(),PERIOD_M1,MODE_HIGH,count,start));//Находим максимум на заданном временном интервале
 return(0);
}
 

Здраствуйте!

Может быть не на том форуме, но задам вопрос.

Если открыто 2 окна того же брокера и одного тогоже счета, могут быть какието тормоза или глюки терминала или сделки будут дольше исполнятся?

Подскажите пожайлуста, очень нужно для торговли на новостях!

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