0ll Опубликовано 4 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 4 августа, 2019 @andrijmix@gmail.com не обижайтесь на Валеру, просто на форуме очень известный советник. И там есть исходники. Идея советника простая, для асинхронных торгов разнонаправленными сетками нужно реализовать через классы или структуры. В принципе больших сложностей нет, но есть нюансы. Если хотите потренироваться в программировании - очень полезно, если хотите торговать сеткой, то лучше посветить время для изучения советника "Forex Setka Trader Mod и [EA]-Setka", имхо лучше сетки Вы не найдёте. Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 4 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 4 августа, 2019 26 минут назад, 0ll сказал: @andrijmix@gmail.com не обижайтесь на Валеру, просто на форуме очень известный советник. И там есть исходники. Идея советника простая, для асинхронных торгов разнонаправленными сетками нужно реализовать через классы или структуры. В принципе больших сложностей нет, но есть нюансы. Если хотите потренироваться в программировании - очень полезно, если хотите торговать сеткой, то лучше посветить время для изучения советника "Forex Setka Trader Mod и [EA]-Setka", имхо лучше сетки Вы не найдёте. @0ll , я уже давно торгую этим советником. Последние 300 стр. ветки несколько раз перечитал. Лучшего нигде не видел. Но насколько я знаю capteen и Старик не дают исходника советника дабы не было злоупотребления со стороны коммерции. И да, советник очень хороший, мне бы он очень помог в коддинге, если у кого-нибудь есть исходник, и создатели не будут против. сбросьте пожалуйста в ЛС. Я примерно понимаю логику Forex Setka, даже не смотрев код, возможно ошибаюсь. Но уже сделал 2 независимые сетки, вроде торгуют:) У меня после завершения работы в тестере свежонаписаного робота не открывается окно с сделками, как это бывает в других советниках после тестирования. Это кто должна открывать какая-то функция? Можете подсказать? Спасибо Изменено 4 августа, 2019 пользователем andrijmix@gmail.com Ссылка на сообщение Поделиться на другие сайты More sharing options...
Старик Опубликовано 4 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 4 августа, 2019 @andrijmix@gmail.com по первой ссылке в первом посте топика - исходники базового бота 1.43 лежат с 2018 года. Для разобраться с идеей там 300% необходимого. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 4 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 4 августа, 2019 2 минуты назад, Старик сказал: @andrijmix@gmail.com по ссылке в первом посте топика исходники базового бота 1.43. Для разобраться с идеей там 300% необходимого. @Старик Вы имеете ввиду Forex_Grid_M7TLP? Ссылка на сообщение Поделиться на другие сайты More sharing options...
Старик Опубликовано 4 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 4 августа, 2019 @andrijmix@gmail.com я имею в виду [EA] - Setka v1.43 и Модель (базовый безиндикаторный бот-эталон) Самыми большими буквами в самом первом посте! 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 5 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 5 августа, 2019 9 часов назад, andrijmix@gmail.com сказал: У меня после завершения работы в тестере свежонаписаного робота не открывается окно с сделками, как это бывает в других советниках после тестирования. Это кто должна открывать какая-то функция? Можете подсказать? Нет такой функции - это глюк какой-то или некорректное завершение теста. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 6 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 6 августа, 2019 Добрый день. Как можно правильно закрыть сделку на бай с лотом х, и сразу же открыть сдлеку с лотом у? Ссылка на сообщение Поделиться на другие сайты More sharing options...
loveЦ Опубликовано 6 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 6 августа, 2019 6 минут назад, andrijmix@gmail.com сказал: Добрый день. Как можно правильно закрыть сделку на бай с лотом х, и сразу же открыть сдлеку с лотом у? Здравствуйте. Нет ни каких условий в Вашем вопросе. Но... Закрываем ордер по условию или по тикету, открываем ордер по какому условию? например схема if(условие) { закрываем ордер по условию; if (закрылся ордер) {открываем ордер if(открылся ордер){ пишем в журнал или просто радуемся} else {пишем ошибку и пробуем еще раз } } else {пишем ошибку о закрытие и пробуем еще раз закрыться} Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 6 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 6 августа, 2019 6 минут назад, loveЦ сказал: Здравствуйте. Нет ни каких условий в Вашем вопросе. Но... Закрываем ордер по условию или по тикету, открываем ордер по какому условию? например схема if(условие) { закрываем ордер по условию; if (закрылся ордер) {открываем ордер if(открылся ордер){ пишем в журнал или просто радуемся} else {пишем ошибку и пробуем еще раз } } else {пишем ошибку о закрытие и пробуем еще раз закрыться} //////////////////////////////////////////////////////////////////////////////////////////////////////////// //------------------------------First Tree-Buy------------------------------------------------------ if(CountTradesBuy()==0 && priceNOW>=Bid && Ask >= price2 - Шаг_1_2 * Point ) { ticketBB1=OrderSend(Symbol(),OP_BUY,Обьем_первая_позиция_на_бай,Ask,Slippage,0,0,"First Tree-Buy",Magic,0,Blue); if(OrderSelect(ticketBB1, SELECT_BY_TICKET )) { price2=OrderOpenPrice(); } if(ticketBB1<1) Print("Error Order Send for second SELL"); } //------------------------------Second Tree-Buy------------------------------------------------------ if(CountTradesBuy()==1 && Ask <= price2 - Шаг_1_2 * Point && ) { price = price2; if (Ask <= price - Шаг_1_2 * Point) Comment(price2); { ticketBB2=OrderSend(Symbol(),OP_BUY,Обьем_вторая_позиция_на_бай,Ask,Slippage,0,0,"SecondPossitionBuy",Magic,0,Blue); if(ticketBB2<1) Print("Error Order Send for second Buy"); } } Здесь я открываю 1 ордер, потом через несколько пунктов еще один. Мне нужно что бы при открытия второго ордера первый закрылся. Побывал я вставить if(!OrderClose(ticketBB1,Обьем_перавя_позиция_на_бай,Bid,Slippage,Yellow)) { Print("Ордер не закрыт ",Обьем_первая_позиция_на_бай); } Это приводит к зависанию терминала Ссылка на сообщение Поделиться на другие сайты More sharing options...
loveЦ Опубликовано 6 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 6 августа, 2019 if(CountTradesBuy()==0 && priceNOW>=Bid && Ask >= price2 - Шаг_1_2 * Point ) { ticketBB1=OrderSend(Symbol(),OP_BUY,Обьем_первая_позиция_на_бай,Ask,Slippage,0,0,"First Tree-Buy",Magic,0,Blue); if(OrderSelect(ticketBB1, SELECT_BY_TICKET )) { price2=OrderOpenPrice(); ticketBB1=OrderTicket(); } if(ticketBB1<1) Print("Error Order Send for second SELL"); } //------------------------------Second Tree-Buy------------------------------------------------------ if(CountTradesBuy()==1 && Ask <= price2 - Шаг_1_2 * Point && ) { int error=OrderClose(ticketBB1,OrderLots(),NormalizeDouble(Ask,Digits),3,Blue); ticketBB2=OrderSend(Symbol(),OP_BUY,Обьем_вторая_позиция_на_бай,Ask,Slippage,0,0,"SecondPossitionBuy",Magic,0,Blue); if(ticketBB2<1) Print("Error Order Send for second Buy"); } } а если так Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 6 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 6 августа, 2019 10 минут назад, loveЦ сказал: if(CountTradesBuy()==0 && priceNOW>=Bid && Ask >= price2 - Шаг_1_2 * Point ) { ticketBB1=OrderSend(Symbol(),OP_BUY,Обьем_первая_позиция_на_бай,Ask,Slippage,0,0,"First Tree-Buy",Magic,0,Blue); if(OrderSelect(ticketBB1, SELECT_BY_TICKET )) { price2=OrderOpenPrice(); ticketBB1=OrderTicket(); } if(ticketBB1<1) Print("Error Order Send for second SELL"); } //------------------------------Second Tree-Buy------------------------------------------------------ if(CountTradesBuy()==1 && Ask <= price2 - Шаг_1_2 * Point && ) { int error=OrderClose(ticketBB1,OrderLots(),NormalizeDouble(Ask,Digits),3,Blue); ticketBB2=OrderSend(Symbol(),OP_BUY,Обьем_вторая_позиция_на_бай,Ask,Slippage,0,0,"SecondPossitionBuy",Magic,0,Blue); if(ticketBB2<1) Print("Error Order Send for second Buy"); } } а если так Получилось! Большое спасибо. Но после этого советник опять открывает (не смотря на Ask >= price2 - Шаг_1_2 * Point ) Мне нужно что бы советник через определенное количество пунктов "забывал" о предыдущем колене. Таких колен я хочу построить 7 штук. Что можете посоветовать? Побывал я вставить функцию Invertor = true , и переворачивать при закрытии ордера, но к сожалению не помогло. Ссылка на сообщение Поделиться на другие сайты More sharing options...
loveЦ Опубликовано 6 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 6 августа, 2019 2 минуты назад, andrijmix@gmail.com сказал: Получилось! Большое спасибо. Сделайте так //------------------------------Second Tree-Buy------------------------------------------------------ if(CountTradesBuy()==1 && Ask <= price2 && ) { int error=OrderClose(ticketBB1,OrderLots(),NormalizeDouble(Ask,Digits),3,Blue); ticketBB1=OrderSend(Symbol(),OP_BUY,Обьем_первая_позиция_на_бай,Ask,Slippage,0,0,"First Tree-Buy",Magic,0,Blue); if(OrderSelect(ticketBB1, SELECT_BY_TICKET )) { price2=OrderOpenPrice() - Шаг_1_2 * Point; ticketBB1=OrderTicket(); } if(ticketBB1<1) Print("Error Order Send for second SELL"); } 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
molot_1 Опубликовано 10 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 10 августа, 2019 Всем Здравствуйте !!! Подскажите пожалуйста код , в мою сборку , что бы открывался ордер на М5 , каждый раз когда совпадают сигналы с М15 и D1 , а не ждал пока сменится на D1. Заранее извиняюсь если коряво объяснил!!! 15AO.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
loveЦ Опубликовано 10 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 10 августа, 2019 16 минут назад, molot_1 сказал: Всем Здравствуйте !!! Подскажите пожалуйста код , в мою сборку , что бы открывался ордер на М5 , каждый раз когда совпадают сигналы с М15 и D1 , а не ждал пока сменится на D1. Заранее извиняюсь если коряво объяснил!!! 15AO.mq4 12 \u043a\u0411 · 1 загрузка Здравствуйте. Так у Вас сигнал совпадает раз в день, потому что D1. Если будет М5 и М15, то сигнал будет появляться раз в 15 минут и т.д. Заранее извиняюсь, если неправильно понял)))) Ссылка на сообщение Поделиться на другие сайты More sharing options...
molot_1 Опубликовано 10 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 10 августа, 2019 Здравствуйте loveЦ !!! Вы всё правильно поняли !!! Поможете ??? Изменено 14 августа, 2019 пользователем molot_1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
rob Опубликовано 12 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 12 августа, 2019 Здравствуйте. Кто знает, помогите пожалуйста. Некоторые советники отображают совершенные сделки на графике например пунктирными линиями, прямо как в тестере. Причем как полагается разными цветами. Какой код за это отвечает? Можно ли прикрутить к сову (прикрепляю)? Спасибо. ma_v_1_3_3.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
loveЦ Опубликовано 12 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 12 августа, 2019 10 минут назад, rob сказал: Здравствуйте. Кто знает, помогите пожалуйста. Некоторые советники отображают совершенные сделки на графике например пунктирными линиями, прямо как в тестере. Причем как полагается разными цветами. Какой код за это отвечает? Можно ли прикрутить к сову (прикрепляю)? Спасибо. ma_v_1_3_3.mq4 71 \u043a\u0411 · 0 загрузок Здравствуйте. У Вас функция Obj_Del() удаляет все объекты во время работы советника и после удаления его с график. Уберите ее и все получится))) Строчка 839 Изменено 12 августа, 2019 пользователем loveЦ Ссылка на сообщение Поделиться на другие сайты More sharing options...
rob Опубликовано 12 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 12 августа, 2019 16 минут назад, loveЦ сказал: Здравствуйте. У Вас функция Obj_Del() удаляет все объекты во время работы советника и после удаления его с график. Уберите ее и все получится))) Строчка 839 Спасибо за совет, но после удаления ошибка при компиляции... Ссылка на сообщение Поделиться на другие сайты More sharing options...
loveЦ Опубликовано 12 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 12 августа, 2019 2 минуты назад, rob сказал: Спасибо за совет, но после удаления ошибка при компиляции... Держите ma_v_1_3_3.mq4 1 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Ar4i Опубликовано 12 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 12 августа, 2019 всем приветики! как в советнике вызвать исполнения скрипта/библиотеки/инд, на другом(определенном) окне графика? так получить № окна способов много. есть следующие мысли, то что могло бы пригодиться: ChartWindowFind() - но как в этом варианте сделать, именно сам запуск скрипта? EventChartCustom() // Генерирует пользовательское событие для указанного графика. (думаю здесь для меня готовый пример только подойдет) можно ли задействовать - FileOpen() ? или без: WinUser32.mqh - дела не будет? подскажите пожалуйста в каком направление двигаться, ссылку в ветке или готовый пример. Ссылка на сообщение Поделиться на другие сайты More sharing options...
rob Опубликовано 12 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 12 августа, 2019 5 часов назад, loveЦ сказал: Держите ma_v_1_3_3.mq4 71 \u043a\u0411 · 1 загрузка Большое спасибо, запустил, проверю. P.S. Неа, все равно не рисует((( То есть он рисует только Arrow в точке открытия сделки, а точку закрытия и саму линию между ними - нет. А хотелось бы, как на скрине. Изменено 12 августа, 2019 пользователем rob Ссылка на сообщение Поделиться на другие сайты More sharing options...
molot_1 Опубликовано 14 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 14 августа, 2019 В 10.08.2019 в 14:57, loveЦ сказал: Здравствуйте. Так у Вас сигнал совпадает раз в день, потому что D1. Если будет М5 и М15, то сигнал будет появляться раз в 15 минут и т.д. Заранее извиняюсь, если неправильно понял)))) Здравствуйте. Подскажите ??? Изменено 18 сентября, 2019 пользователем molot_1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 14 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 14 августа, 2019 @molot_1 У Вас в советнике реализован поочерёдный вход: Бай-Селл-Бай-Селл. т.е. Все индюки встали в Бай, сделка Бай, выставляются флаги Бай-запрет, Селл-разрешить. потом советник ждёт, чтоб все индюки встали в Селл, сделка Селл, выставляются флаги Селл-запрет, Бай-разрешить. Вы хотите как? чтоб каждые 5 минут сделки в Бай(например) открывались? - настрочит как из пулемета, будьте уверены. Ссылка на сообщение Поделиться на другие сайты More sharing options...
molot_1 Опубликовано 15 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 15 августа, 2019 23 часа назад, 0ll сказал: @molot_1 У Вас в советнике реализован поочерёдный вход: Бай-Селл-Бай-Селл. т.е. Все индюки встали в Бай, сделка Бай, выставляются флаги Бай-запрет, Селл-разрешить. потом советник ждёт, чтоб все индюки встали в Селл, сделка Селл, выставляются флаги Селл-запрет, Бай-разрешить. Вы хотите как? чтоб каждые 5 минут сделки в Бай(например) открывались? - настрочит как из пулемета, будьте уверены. Здравствуйте 0ll !!! Мне нужно, чтобы если на M15 Бай и на D1 Бай то на М5 открывались только Бай , но не один раз в день , а каждый раз когда когда на М5 Бай. Вообще мне просто нужен код этой функции , потому что я учусь , а этот индикатор я прилепил , так. Мне нужен код правильно вписаный в данный советник для использования как пример ( шаблон ). Спасибо! Ссылка на сообщение Поделиться на другие сайты More sharing options...
qbar Опубликовано 15 августа, 2019 Поделиться Доработка советников: общая тема Опубликовано 15 августа, 2019 Здравствуйте, совсем недавно познакомился с Вашим сайтом. Посмотрел грамотные уроки от Сергея, большой респект, вдохновляет. Пытаюсь написать эксперт с такими условиями. Устанавливаю в инпутах : if dtriger = 1 - открывает BUY. if dtriger = -1 - открывает SELL. if dtriger = 0 - закрывает все. Проблема : не переворачивается, висят встречные ордера. При смене dtriger на противоположный пытаюсь предварительно закрыть уже открытую позицию, но видно не судьба, хотелось бы переворачиваться. Stend_t1.mq5 Изменено 15 августа, 2019 пользователем 0ll Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти