Такой скрипт написать легко. Писать по шагам. 1. Бросаем на график и получаем PriceOnDrop
2. Перебираем ордера и находим ближайший. Выдаем запрос и получаем подтверждение или отказ
//+-------------------------------------------------------+ //| функция перепереворота ордера PROBA.mq4| //+-------------------------------------------------------+ // Назначение функций узнаем поставив на них курсор и нажав F1 #property strict void OnStart() { double Цена = WindowPriceOnDropped(); int Тикет=0; double Разность=1000000; // Ищем ближайший for(int Номер=OrdersTotal()-1; Номер>=0; Номер--) { if(!OrderSelect(Номер, SELECT_BY_POS)) continue; if(OrderType()>OP_SELL) continue; // Отложку как перевернуть? double НоваяРазность=fabs(OrderOpenPrice()-Цена); if(НоваяРазность<Разность) { Разность=НоваяРазность; Тикет=OrderTicket(); } } if(Тикет==0) { Alert("Отсутствуют"); return; } if(!OrderSelect(Тикет, SELECT_BY_TICKET)) { Alert("Ордер ",Тикет," Был и пропал!!!"); return; } string ТипОрдера[2]={"BUY","SELL"}; if(MessageBox("Ордер "+(string)Тикет+" "+ТипОрдера[OrderType()], "Переворачивать ?", MB_OKCANCEL + MB_ICONQUESTION)==IDCANCEL) { Alert("Ордер ",Тикет," Отмена!!!"); return; } // Переворачиваем..... }
3. Переворачиваем или отказываемся
Такой скрипт написать легко. Писать по шагам. 1. Бросаем на график и получаем PriceOnDrop
2. Перебираем ордера и находим ближайший. Выдаем запрос и получаем подтверждение или отказ
3. Переворачиваем или отказываемся
Это для всех легко - нужно немного, совсем чуть-чуть зубрежки в самом начале. Потом уже надо будет часто лазить в справочник.
Как зубрить: смотреть на мой скрипт в МетаЕдиторе и стараться понять назначение каждой строчки в самом начале. При затруднении наводить курсор и нажимать F1.
Потом закрыть скрипт и писать по памяти новый.
#property strict // Это первая часть void OnStart() { double Цена = WindowPriceOnDropped(); Alert("WindowPriceOnDropped = ", Цена); }Запустить и смотреть. Получилось - добавить по памяти строки. Если ошибка - закрыть свой и открыть мой. И снова смотреть, и снова сначала писать. Вот этот труд будет вознагражден знанием программирования.
Народ, подскажите плиз скрипт (для МТ4), который переворачивает выборочно, только одну открытую позицию, а не все которые открыты. Все скрипты которые мне попадаются, переворачивают именно все позиции на одном символе. Например у меня на евро/долларе открыто две позиции Buy, но мне нужно перевернуть только одну позицию чтобы она стала Sell, а вторая позиция Buy так бы и осталось не перевернутой.
Раньше мне попадался такой скрип, его можно было мышкой перетащить на конкретный ордер который необходимо перевернуть. Он определял ближайший ордер и переворачивал только его. В настройках можно было выставлять расстояние до ближайшей позиции, а дальше этого значения, скрипт не переворачивал. Также в настройках еще можно было задавать какие ордера переворачивать, только рыночные, только отложенные, или те и другие.На МТ4 нет позиций - там ордера. Вот почему и велят переходить MT5. Там на счете без хеджирования всегда одна позиция, сколько бы ордеров ни посылали. Отличная вещь для усреднителей. И если есть позиция Sell, то безо всякого закрытия открыть удвоенную бай, и останется одна бай. Советую посмотреть...
На МТ4 нет позиций - там ордера.
Кто вам такое сказал? Вы просто плохо информированы. Там есть и ордера и позиции. Разве могут быть ордера без позиций? Ведь ордер рано или поздно сработает и это будет уже позиция. Позиция может открываться и сразу по рыночной цене.
С возможностями пятёрки я знаком. Режим без хеджирования это неттинговый режим. Такой режим работы можно организовать и на 4-ке, используя дополнительный код в эксперте.
На МТ4 нет позиций - там ордера.
Кто вам такое сказал? Вы просто плохо информированы. Там есть и ордера и позиции. Разве могут быть ордера без позиций? Ведь ордер рано или поздно сработает и это будет уже позиция. Позиция может открываться и сразу по рыночной цене.
С возможностями пятёрки я знаком. Режим без хеджирования это неттинговый режим. Такой режим работы можно организовать и на 4-ке, используя дополнительный код в эксперте.
Посмотрите в MT4 - Ордера открывшись остались ордерами. Есть функция OrderClose или, Позиция Close ???
и в MT5
В MT5 на счете без хеджирования все открытые ордера превращаются в одну позицию. Есть тут функция OrderClose ??? вряд ли
Такой режим работы вряд ли можно организовать и на 4-ке - Сколько ордеров откроете, столько и будет видно в терминале. Ну в терминале их спрятать, закрыть можно. А в истории они вылезут и в журнале.
Ситуация... Открывается бай ( по сигналу одного/ двух индикаторов или отложенным по цене/ по индикатора волатильность) с усреднением по коефициенту с указанием количества орднров. Граница усреднения ближайший фрактал хая/ если хай больше средней волатильности за неделю то по сред волатильности. Шаг ордеров усреднения регулируется количеством ордеров. Вся серия баев локируеться отложкой сел стопом общим лотос серии баев с коефициентом на расстоянии шага усредняющих ордеров. Если открывается лок ордер сов ищет ближайший противоположный ордер, то есть последний байлимит и по его цене выставляет бай стоп отложку с двойным лотос.дальше качели. Закрытие по общему тейку только в сторону серии (определяеться по прямой корреляции для евродолл- ближайший фрактал доллфранк на чарте евродолл или по проверке на хай/ Лоу доллфранка за последние "н" баров) или тралу от общего безубытка с мин профитом в сторону лока или в сторону серии Трал с коефиц шага, или по обратному сигналу индикатора при условиии что первый ордер серии в зоне профита . готов оплатить труды.
Есть то ли бритва, то ли принцип Оккама: проще = правильнее. Платят на фрилансе. Здесь бесплатно. Поторгуйте по своей стратегии на демо. Получится - будем писать
Посмотрите в MT4 - Ордера открывшись остались ордерами. Есть функция OrderClose или, Позиция Close ???
и в MT5
В MT5 на счете без хеджирования все открытые ордера превращаются в одну позицию. Есть тут функция OrderClose ??? вряд ли
Такой режим работы вряд ли можно организовать и на 4-ке - Сколько ордеров откроете, столько и будет видно в терминале. Ну в терминале их спрятать, закрыть можно. А в истории они вылезут и в журнале.
Посмотрите в MT4 - Ордера открывшись остались ордерами.
Ну это просто заголовок таблицы. И общее название для ордеров разного типа. Существуют отложенные ордера и рыночные ордера, так вот рыночные ордера и сработавшие отложенные ордера у трейдеров принято называть позициями, возможно потому, что так короче. Для ордеров существует функция удаления DeleteOrders().
Такой режим работы вряд ли можно организовать и на 4-ке
Ну это конечно не режим терминала, а просто в эксперте при появлении двух разнонаправленных позиций моделируется исполнение команды закрыть перекрытые. Я делал такие эксперты. Давно правда, кое что уже даже подзабыл. И да, в истории будут отображаться. Там для закрытия разнонаправленных позиций функция OrderCloseBy() используется. Посмотрите учебник, там есть пример кода для закрытия перекрытых. Но я использовал другой, более компактный код.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Народ, подскажите плиз скрипт (для МТ4), который переворачивает выборочно, только одну открытую позицию, а не все которые открыты. Все скрипты которые мне попадаются, переворачивают именно все позиции на одном символе. Например у меня на евро/долларе открыто две позиции Buy, но мне нужно перевернуть только одну позицию чтобы она стала Sell, а вторая позиция Buy так бы и осталось не перевернутой.
Раньше мне попадался такой скрип, его можно было мышкой перетащить на конкретный ордер который необходимо перевернуть. Он определял ближайший ордер и переворачивал только его. В настройках можно было выставлять расстояние до ближайшей позиции, а дальше этого значения, скрипт не переворачивал. Также в настройках еще можно было задавать какие ордера переворачивать, только рыночные, только отложенные, или те и другие.