2. Даже если хотите написать сами с нуля, то если бы вы заглянули в методы соответствующие СБ, то сразу бы узнали чем ваш код отличается, т.е. в чём может быть затык.
з.ы. В СБ классы CTrade, CExpertTrade, для списка тикетов CArrayLong и т.д.
Я со стандартной библиотекой никогда не работал. Езжу только на велосипедах собственного изготовления)
Смотрю, она в основном на классах построена, а я в ООП не особо умею. Пишу в процедурном стиле, всё в основном на функциях завязано. В редких случаях пригождается структуру - контейнер сделать, чтобы свойства относящиеся к одной сущности вместе собрать, но не более того.
Спасибо конечно, но у меня была проблема с ордерами типов: buy_stop_limit и sell_stop_limit. Обычные buy_stop, sell_stop, buy_limit, sell_limit нормально модифицировались.
Я обычно в коде стараюсь делать все необходимые проверки, чтобы практически при любом наборе входных данных функция возвращала корректное значение.
А здесь, например, если на вход передать нули в качестве дистанции, стопов и тейков, должна возникнуть ошибка со всеми ценами.
Так же не вижу проверок стоп/фриз левла и кратность тика для инструментов, где tick_size больше чем point.
Спасибо конечно, но у меня была проблема с ордерами типов: buy_stop_limit и sell_stop_limit. Обычные buy_stop, sell_stop, buy_limit, sell_limit нормально модифицировались.
Я обычно в коде стараюсь делать все необходимые проверки, чтобы практически при любом наборе входных данных функция возвращала корректное значение.
А здесь, например, если на вход передать нули в качестве дистанции, стопов и тейков, должна возникнуть ошибка со всеми ценами.
Так же не вижу проверок стоп/фриз левла и кратность тика для инструментов, где tick_size больше чем point.
так у них не могут быть стопы и профиты - как я понимаю они только выставляют buy_stop, sell_stop, buy_limit, sell_limit
ORDER_TYPE_BUY_STOP_LIMIT
По достижении цены ордера выставляется отложенный ордер Buy Limit по цене StopLimit
попробовал в терминале - запутался, надо башку иметь как у Карла Маркса
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Очень сложная функция - думаю мало кто ей пользуется.
Да, не с первого раза вникаешь в эти стоп-лимиты. На Нидзя-трейдере так там вообще разрабы перепутали названия цен размещения ордера и выставления лимитки, представляете, пока выяснил тоже бошку сломал))
А так удобная штука - чтоб без кода ловить прорывы - пробила цена какой-то уровень - ставим лимитку подобрать на откате. На бирже вроде очень популярны такие ордера.
Oleg Remizov:
Я со стандартной библиотекой никогда не работал. Езжу только на велосипедах собственного изготовления)
Смотрю, она в основном на классах построена, а я в ООП не особо умею. Пишу в процедурном стиле, всё в основном на функциях завязано. В редких случаях пригождается структуру - контейнер сделать, чтобы свойства относящиеся к одной сущности вместе собрать, но не более того.
Когда сам с нуля пишешь это хорошо - лучше разбираешься в нюансах. Уверен для вас будет не сложно разобраться в ООП, да особо глубоко и не надо разбираться. Те же классы=структуры, в которых как-бы "встроены" ещё обычные функции, работающие с данными этой структуры=класса.
Создаёте объект класса CTrade Trade, задаёте ему параметры, инициализируете как надо (всё в примерах есть) и потом используете как структуру Trade.КучаПолезныхФункций(); )
попробовал в терминале - запутался, надо башку иметь как у Карла Маркса
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Очень сложная функция - думаю мало кто ей пользуется.
Да я тоже ей особо пользоваться не собираюсь. У меня была задача сделать утилиту, которая могла бы автоматически устанавливать стопы и тейки для любых ордеров, существующих в терминале MetaTrader5, и как раз с этими buy_stop_limit, sell_stop_limit возникли сложности. Сам я такие ордера не устанавливаю, но может кто-то ими пользуется, так что пусть такая возможность будет. Стараюсь сделать универсальное решение.
Да, не с первого раза вникаешь в эти стоп-лимиты. На Нидзя-трейдере так там вообще разрабы перепутали названия цен размещения ордера и выставления лимитки, представляете, пока выяснил тоже бошку сломал))
А так удобная штука - чтоб без кода ловить прорывы - пробила цена какой-то уровень - ставим лимитку подобрать на откате. На бирже вроде очень популярны такие ордера.
Когда сам с нуля пишешь это хорошо - лучше разбираешься в нюансах. Уверен для вас будет не сложно разобраться в ООП, да особо глубоко и не надо разбираться. Те же классы=структуры, в которых как-бы "встроены" ещё обычные функции, работающие с данными этой структуры=класса.
Создаёте объект класса CTrade Trade, задаёте ему параметры, инициализируете как надо (всё в примерах есть) и потом используете как структуру Trade.КучаПолезныхФункций(); )
Я пробовал разобраться несколько раз с ООП, но каждый раз спотыкался об нагромождения информации усложняющей процесс понимания. В итоге так его и не освоил.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Да, именно. Кстати пару лайфхаков)
1. при использовании стандартной библиотеки вы бы не столкнулись с этими проблемами.
2. Даже если хотите написать сами с нуля, то если бы вы заглянули в методы соответствующие СБ, то сразу бы узнали чем ваш код отличается, т.е. в чём может быть затык.
з.ы. В СБ классы CTrade, CExpertTrade, для списка тикетов CArrayLong и т.д.
Я со стандартной библиотекой никогда не работал. Езжу только на велосипедах собственного изготовления)
Смотрю, она в основном на классах построена, а я в ООП не особо умею. Пишу в процедурном стиле, всё в основном на функциях завязано. В редких случаях пригождается структуру - контейнер сделать, чтобы свойства относящиеся к одной сущности вместе собрать, но не более того.
Вот скрипт -он выставляет https://www.mql5.com/ru/code/30709
Спасибо конечно, но у меня была проблема с ордерами типов: buy_stop_limit и sell_stop_limit. Обычные buy_stop, sell_stop, buy_limit, sell_limit нормально модифицировались.
Я обычно в коде стараюсь делать все необходимые проверки, чтобы практически при любом наборе входных данных функция возвращала корректное значение.
А здесь, например, если на вход передать нули в качестве дистанции, стопов и тейков, должна возникнуть ошибка со всеми ценами.
Так же не вижу проверок стоп/фриз левла и кратность тика для инструментов, где tick_size больше чем point.
Спасибо конечно, но у меня была проблема с ордерами типов: buy_stop_limit и sell_stop_limit. Обычные buy_stop, sell_stop, buy_limit, sell_limit нормально модифицировались.
Я обычно в коде стараюсь делать все необходимые проверки, чтобы практически при любом наборе входных данных функция возвращала корректное значение.
А здесь, например, если на вход передать нули в качестве дистанции, стопов и тейков, должна возникнуть ошибка со всеми ценами.
Так же не вижу проверок стоп/фриз левла и кратность тика для инструментов, где tick_size больше чем point.
так у них не могут быть стопы и профиты - как я понимаю они только выставляют buy_stop, sell_stop, buy_limit, sell_limit
ORDER_TYPE_BUY_STOP_LIMIT
По достижении цены ордера выставляется отложенный ордер Buy Limit по цене StopLimit
ORDER_TYPE_SELL_STOP_LIMIT
По достижении цены ордера выставляется отложенный ордер Sell Limit по цене StopLimit
так у них не могут быть стопы и профиты - как я понимаю они только выставляют buy_stop, sell_stop, buy_limit, sell_limit
ORDER_TYPE_BUY_STOP_LIMIT
По достижении цены ордера выставляется отложенный ордер Buy Limit по цене StopLimit
ORDER_TYPE_SELL_STOP_LIMIT
По достижении цены ордера выставляется отложенный ордер Sell Limit по цене StopLimit
Я тоже сначала так подумал, когда получил ошибку их модификации при корректных ценах, но это в итоге удалось исправить.
Теперь, как уже проверено на практике, ясно, что стопы и тейки у них быть могут и они выставляются.
Я тоже сначала так подумал, когда получил ошибку их модификации при корректных ценах, но это в итоге удалось исправить.
Теперь, как уже проверено на практике, ясно, что стопы и тейки у них быть могут и они выставляются.
ведь после того как он сработает buy_stop_limit - он выставит отложенный ордер со своими стопами и профитами
а для чего тогда ему стопы и профиты ?
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
кажись понял - сработает стоп он удалится и не откроет отложенный ордер
ведь после того как он сработает buy_stop_limit - он выставит отложенный ордер со своими стопами и профитами
а для чего тогда ему стопы и профиты ?
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
кажись понял - сработает стоп он удалится и не откроет отложенный ордер
Нет, стоп и профит относятся к buy_limit или sell_limit, которые разместятся при срабатывании buy_stop_limit или sell_stop_limit.
Нет, стоп и профит относятся к buy_limit или sell_limit, которые разместятся при срабатывании buy_stop_limit или sell_stop_limit.
попробовал в терминале - запутался, надо башку иметь как у Карла Маркса
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Очень сложная функция - думаю мало кто ей пользуется.
попробовал в терминале - запутался, надо башку иметь как у Карла Маркса
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Очень сложная функция - думаю мало кто ей пользуется.
Да, не с первого раза вникаешь в эти стоп-лимиты. На Нидзя-трейдере так там вообще разрабы перепутали названия цен размещения ордера и выставления лимитки, представляете, пока выяснил тоже бошку сломал))
А так удобная штука - чтоб без кода ловить прорывы - пробила цена какой-то уровень - ставим лимитку подобрать на откате. На бирже вроде очень популярны такие ордера.
Я со стандартной библиотекой никогда не работал. Езжу только на велосипедах собственного изготовления)
Смотрю, она в основном на классах построена, а я в ООП не особо умею. Пишу в процедурном стиле, всё в основном на функциях завязано. В редких случаях пригождается структуру - контейнер сделать, чтобы свойства относящиеся к одной сущности вместе собрать, но не более того.
Когда сам с нуля пишешь это хорошо - лучше разбираешься в нюансах. Уверен для вас будет не сложно разобраться в ООП, да особо глубоко и не надо разбираться. Те же классы=структуры, в которых как-бы "встроены" ещё обычные функции, работающие с данными этой структуры=класса.
Создаёте объект класса CTrade Trade, задаёте ему параметры, инициализируете как надо (всё в примерах есть) и потом используете как структуру Trade.КучаПолезныхФункций(); )
попробовал в терминале - запутался, надо башку иметь как у Карла Маркса
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Очень сложная функция - думаю мало кто ей пользуется.
Да, не с первого раза вникаешь в эти стоп-лимиты. На Нидзя-трейдере так там вообще разрабы перепутали названия цен размещения ордера и выставления лимитки, представляете, пока выяснил тоже бошку сломал))
А так удобная штука - чтоб без кода ловить прорывы - пробила цена какой-то уровень - ставим лимитку подобрать на откате. На бирже вроде очень популярны такие ордера.
Когда сам с нуля пишешь это хорошо - лучше разбираешься в нюансах. Уверен для вас будет не сложно разобраться в ООП, да особо глубоко и не надо разбираться. Те же классы=структуры, в которых как-бы "встроены" ещё обычные функции, работающие с данными этой структуры=класса.
Создаёте объект класса CTrade Trade, задаёте ему параметры, инициализируете как надо (всё в примерах есть) и потом используете как структуру Trade.КучаПолезныхФункций(); )
Я пробовал разобраться несколько раз с ООП, но каждый раз спотыкался об нагромождения информации усложняющей процесс понимания. В итоге так его и не освоил.