Ответ
 
Опции темы
17.10.2014, 17:56
Аватар для profamilii
profamilii Новичок форума
Регистрация: 05.02.2013 / Сообщений: 62
Поблагодарили 14 раз(а) / Репутация: 15
Доброго времени суток форумчане. Подскажите пожалуйста как прописать команду открытия ордера (рыночное исполнение) при условии, когда цена проходит определенное количество пунктов за определенное количество секунд в одном направлении?
profamilii вне форума Ответить с цитированиемОтветить с цитированием  
18.10.2014, 08:17
Регистрация: 13.03.2009 / Сообщений: 2,324
Поблагодарили 1,945 раз(а) / Репутация: 2018
Сообщение от profamilii Посмотреть сообщение
Доброго времени суток форумчане. Подскажите пожалуйста как прописать команду открытия ордера (рыночное исполнение) при условии, когда цена проходит определенное количество пунктов за определенное количество секунд в одном направлении?
В чём вопрос? Не знаешь как открывать маркету или как условие прописать? Или весь советник написать надо, тогда это в эту ветку.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме Ответить с цитированиемОтветить с цитированием  
18.10.2014, 08:22
Аватар для profamilii
profamilii Новичок форума
Регистрация: 05.02.2013 / Сообщений: 62
Поблагодарили 14 раз(а) / Репутация: 15
Сообщение от Ugar Посмотреть сообщение
В чём вопрос? Не знаешь как открывать маркету или как условие прописать? Или весь советник написать надо, тогда это в эту ветку.
Не знаю как условие прописать. Конкретно " Если цена прошла 10 или более пунктов вверх за 3 секунды" Ну и наоборот.
profamilii вне форума Ответить с цитированиемОтветить с цитированием  
18.10.2014, 08:57
Регистрация: 13.03.2009 / Сообщений: 2,324
Поблагодарили 1,945 раз(а) / Репутация: 2018
Сообщение от profamilii Посмотреть сообщение
Не знаю как условие прописать. Конкретно " Если цена прошла 10 или более пунктов вверх за 3 секунды" Ну и наоборот.
Когда то давно писал такую функцию. Делал это с помощью пары статических массивов. В один пишется время, в другой цены, посекундно.
Ну а взять из нужных ячеек цены и сравнить их не проблема.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
profamilii (18.10.2014)
19.10.2014, 19:32
Аватар для Вовка_25
Вовка_25 Новичок форума
Регистрация: 13.05.2011 / Адрес: Россия / Сообщений: 33
Поблагодарили 23 раз(а) / Репутация: 24
привет,подскажите почему советник не тестирует на 99 тиковых котировках?
Вложения:
Тип файла: mq4 SES_EU_v3.1Final.mq4 (19.1 Кб, 18 просмотров)
Вовка_25 вне форума Ответить с цитированиемОтветить с цитированием  
27.10.2014, 09:56
Аватар для gince
gince Местный знаток
Регистрация: 09.09.2008 / Адрес: Литва / Сообщений: 427
Поблагодарили 784 раз(а) / Репутация: 784
  • Отправить сообщение для gince с помощью Skype™

По умолчанию Помогите с метками.


Господа форумчани, помогите с необычным советником. Запутался с метками (флажками) открытия ордера и дополнительных ордеров.
Да и в файл плохо печатает.
1.По условию на вход от индикаторов открываем первый ордер. Закры-
вается стустя 5 мин после открытия.
2.Проверяем прибыльнось (угадали ли мы направление).
cl_price-op_price)*op_type<0
2.1.Если угадали,ждем следующий сигнал от индикаторов на вход по
первому (1)пункту.
2.2.А если неугадали направление, открываемся в том же направлении
что и преведущая сделка плюс минимальное условие от индикаторов.
3.Может быть открытым только один ордер. Дополнительно можно откыть
в ыом же направлении только один ордер.
4.Цены открытия/закрытия и время открытия/закрытия печатаеться в
файл после закрытия ордера. Также печатаеться направление
5.Функции открытия и закрытия ненужны.

Skype: gintaras2604
Вложения:
Тип файла: mq4 ge_ELT PrintToFile.mq4 (7.8 Кб, 5 просмотров)

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Гинтарас

Последний раз редактировалось gince; 27.10.2014 в 10:02. Причина: пополнение
gince на форуме Ответить с цитированиемОтветить с цитированием  
27.10.2014, 11:31
Аватар для gince
gince Местный знаток
Регистрация: 09.09.2008 / Адрес: Литва / Сообщений: 427
Поблагодарили 784 раз(а) / Репутация: 784
  • Отправить сообщение для gince с помощью Skype™
плохо видно изложил свои проблемы

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Гинтарас
gince на форуме Ответить с цитированиемОтветить с цитированием  
27.10.2014, 14:01
Аватар для gince
gince Местный знаток
Регистрация: 09.09.2008 / Адрес: Литва / Сообщений: 427
Поблагодарили 784 раз(а) / Репутация: 784
  • Отправить сообщение для gince с помощью Skype™
Помогите пожалыйство

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Гинтарас
gince на форуме Ответить с цитированиемОтветить с цитированием  
27.10.2014, 14:24
Аватар для Sicilian
Sicilian Почётный гражданин
Регистрация: 24.03.2012 / Сообщений: 215
Поблагодарили 300 раз(а) / Репутация: 301
Люди добрые. подскажите как вписать в коде вместо название цвета лини вписать чтоб не было цвета а поставить там None. когда вместо названия цвета пишу none выдает ошибку
Sicilian вне форума Ответить с цитированиемОтветить с цитированием  
27.10.2014, 14:31
Аватар для ansol
ansol Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,017
Поблагодарили 855 раз(а) / Репутация: 841
Сообщение от Sicilian Посмотреть сообщение
Люди добрые. подскажите как вписать в коде вместо название цвета лини вписать чтоб не было цвета а поставить там None. когда вместо названия цвета пишу none выдает ошибку
Кнопку F1 сломал что-ли ?
Константа "Нету цвета":
PHP код:
clrNONE 
ansol на форуме Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
eevviill (28.10.2014), Sicilian (27.10.2014)
27.10.2014, 14:34
Аватар для Sicilian
Sicilian Почётный гражданин
Регистрация: 24.03.2012 / Сообщений: 215
Поблагодарили 300 раз(а) / Репутация: 301
Сообщение от ansol Посмотреть сообщение
Кнопку F1 сломал что-ли ?
Константа "Нету цвета":
PHP код:
clrNONE 
Большая благодарность
Sicilian вне форума Ответить с цитированиемОтветить с цитированием  
27.10.2014, 14:38
Аватар для ansol
ansol Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,017
Поблагодарили 855 раз(а) / Репутация: 841
Сообщение от Sicilian Посмотреть сообщение
Большая благодарность
Я имел в виду, что список цветов в стандартном хелпе выдается без проблем, иногда туда полезно заглядывать по мелочам разным и быстрее
ansol на форуме Ответить с цитированиемОтветить с цитированием  
27.10.2014, 14:51
Аватар для Sicilian
Sicilian Почётный гражданин
Регистрация: 24.03.2012 / Сообщений: 215
Поблагодарили 300 раз(а) / Репутация: 301
Сообщение от ansol Посмотреть сообщение
Я имел в виду, что список цветов в стандартном хелпе выдается без проблем, иногда туда полезно заглядывать по мелочам разным и быстрее
я не смог этого сообразить
Sicilian вне форума Ответить с цитированиемОтветить с цитированием  
28.10.2014, 08:41
Аватар для eevviill
eevviill Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,027 раз(а) / Репутация: 9027
  • Отправить сообщение для eevviill с помощью Skype™

По умолчанию 2


1) extern float Lot = 0.1;
truncation of constant value
possible loss of data due to type conversion

Почему?
2) Придумали uchar,short... Почему сами разработчики не используют(
int ma_method, //метод усреднения
int applied_price, //тип цены

)?
eevviill вне форума Ответить с цитированиемОтветить с цитированием  
28.10.2014, 08:53
Аватар для ansol
ansol Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,017
Поблагодарили 855 раз(а) / Репутация: 841
Сообщение от eevviill Посмотреть сообщение
1) extern float Lot = 0.1;
truncation of constant value
possible loss of data due to type conversion

Почему?
Цитата:
Дополнительные сведения об этих значениях см. в документе "Стандарт организации IEEE в отношении двоичной арифметики с плавающей запятой" (IEEE Standard Binary Floating-Point Arithmetic), который доступен на веб-узле организации IEEE (на английском языке).

Они ваяют терминал на языке С, оттуда же дерут все существующие типы и конструкции.
Вот идиотские сообщения о якобы ошибках, конечно, раздражают, хотя можно с помощью таких фишек нормально поэкономить память или ресурсы проца.
Но когда видишь
Цитата:
possible loss of data due to type conversion
все желание пропадает
ansol на форуме Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
alexshell (28.10.2014), eevviill (28.10.2014)
29.10.2014, 15:59
Аватар для Alexz2107
Alexz2107 Интересующийся
Регистрация: 05.05.2011 / Сообщений: 16
Поблагодарили 1 раз в 1 сообщении / Репутация: 2

По умолчанию Как найти ближайший ордер?..


Здравствуйте, подскажите, пожалуйста, как можно определить расстояние в пунктах между рынком и ближайшей открытой позицией? Я пытался использовать известную функцию DistMarketAndPos(), но она не возвращает никаких значений.
Или хотя бы как выбрать ближайший к рынку ордер?
Alexz2107 вне форума Ответить с цитированиемОтветить с цитированием  
29.10.2014, 20:29
Аватар для matro3
matro3 Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344
Код:
fot(int i=0; i<OrdersTotal(); i++)
{
   int p;
   if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
      if(OrderSymbol()==_Symbol)
         if(OrderMagicNumber()==mn)
         {
            if(OrderType()==OP_BUY)
               if((MarketInfo(OrderSymbol(), MODE_BID)-OrderOpenPrice())/Point<p)
                  p=(MarketInfo(OrderSymbol(), MODE_BID)-OrderOpenPrice())/Point;
            if(OrderType()==OP_SELL)
               if((OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_ASK))/Point<p)
                  p=(OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_ASK))/Point;
         }
   return(p);
}
Типа того...
matro3 вне форума Ответить с цитированиемОтветить с цитированием  
30.10.2014, 05:02
Аватар для AlexeyVik
AlexeyVik Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,590
Поблагодарили 3,712 раз(а) / Репутация: 3708
Сообщение от matro3 Посмотреть сообщение
Код:
fot(int i=0; i<OrdersTotal(); i++)
{
   int p;
   if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
      if(OrderSymbol()==_Symbol)
         if(OrderMagicNumber()==mn)
         {
            if(OrderType()==OP_BUY)
               if((MarketInfo(OrderSymbol(), MODE_BID)-OrderOpenPrice())/Point<p)
                  p=(MarketInfo(OrderSymbol(), MODE_BID)-OrderOpenPrice())/Point;
            if(OrderType()==OP_SELL)
               if((OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_ASK))/Point<p)
                  p=(OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_ASK))/Point;
         }
   return(p);
}
Типа того...
А если ордеров не один и в разных направлениях??? Как в этом коде определяется который из них ближе к текущей цене???

Здесь надо использовать математические функции MathMin() и MathAbs()
В начале кода переменной double р назначить значение побольше и потом такую строку независимо от типа ордера.
р = MathMin(р, MathAbs(OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_BID)))

Последний раз редактировалось AlexeyVik; 30.10.2014 в 05:15.
AlexeyVik вне форума Ответить с цитированиемОтветить с цитированием  
30.10.2014, 06:35
Аватар для matro3
matro3 Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344
Это код не для пользования как есть, а для доработки.
Возвращать можно что угодно, тикет или расстояние до цены, что там нужно-то?
matro3 вне форума Ответить с цитированиемОтветить с цитированием  
30.10.2014, 06:50
Аватар для AlexeyVik
AlexeyVik Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,590
Поблагодарили 3,712 раз(а) / Репутация: 3708
Сообщение от matro3 Посмотреть сообщение
Это код не для пользования как есть, а для доработки.
Возвращать можно что угодно, тикет или расстояние до цены, что там нужно-то?
Ну так отвечаешь-то на конкретный вопрос...
Сообщение от Alexz2107 Посмотреть сообщение
как можно определить расстояние в пунктах между рынком и ближайшей открытой позицией?
А после твоего ответа будет следующий вопрос почему не работает, и ещё и ещё...
AlexeyVik вне форума Ответить с цитированиемОтветить с цитированием  
Ответ

Метки
mql4, mql4 помощь, вопросы mql4


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 04:29. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO