usver73 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 А почему он не должен открываться? Условия соблюдены: один ордер в рынке, условия на вход, видимо, тоже существуют..Я изменения внес на скорую руку, буквально по заданным вопросам...п.с. я про индикацию количества ордеров в рынке: а "нафига козе баян", если по условиям сетка не строится? Глазами сложно отличить? Или на одной паре разные совы работают? Изменения сделать не сложно, но зачем? Цитата Bar_analys = 800; // количество баров анализируемого периода.ТФ не важен, важен отрезок времени. Просто подбирается количество баров под ТФ. пример На 1часе будет 200 баров, на 30мин 400 баров, на 15мин 800 на 5мин 2400 баров В сове нет таких расчетов- чем выше ТФ, тем длиннее анализируемый период Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 А почему он не должен открываться? Условия соблюдены: один ордер в рынке, условия на вход, видимо, тоже существуют..советник работает на отбой от границ канала когда цена внутри. вверху селл, внизу бай, центр ТП. за пределами канала ордера не должны открываться, мы ждем когда цена вернется в канал.я про индикацию количества ордеров в рынке: а "нафига козе баян", если по условиям сетка не строится? Глазами сложно отличить? Или на одной паре разные совы работают? Изменения сделать не сложно, но зачем?мне для работы с одним ордером не нужнаВ сове нет таких расчетов- чем выше ТФ, тем длиннее анализируемый период вы спросили про рабочий ТФ, я написал, что можно работать на любом ТФ, просто под каждый ТФ надо выставлять определенное количество баров в ручную, автоматом ничего не меняется. Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 А почему он не должен открываться? Условия соблюдены: один ордер в рынке, условия на вход, видимо, тоже существуют..советник работает на отбой от границ канала когда цена внутри. вверху селл, внизу бай, центр ТП. за пределами канала ордера не должны открываться, мы ждем когда цена вернется в канал. Эта логика соблюдалась ранее или я своим вмешательством ее нарушил? Цитата я про индикацию количества ордеров в рынке: а "нафига козе баян", если по условиям сетка не строится? Глазами сложно отличить? Или на одной паре разные совы работают? Изменения сделать не сложно, но зачем?мне для работы с одним ордером не нужна Убрать совсем? Цитата В сове нет таких расчетов- чем выше ТФ, тем длиннее анализируемый период вы спросили про рабочий ТФ, я написал, что можно работать на любом ТФ, просто под каждый ТФ надо выставлять определенное количество баров в ручную, автоматом ничего не меняется. Ну, допустим, во время работы советника на реалы Вы захотели посмотреть другой ТФ. После переключения ТФ вся арифметика канала слетит. Оно Вам надо?п.с. не в "тему": почему при ответе, если вставляешь из буфера обмена кусок текста, он самопроизвольно принимает какие-то настройки шрифта. Приходится руками удалять тэги форматирования. Честно говоря, задолбался. И появился этот глюк/фича относительно недавно... Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 Эта логика соблюдалась ранее или я своим вмешательством ее нарушил?Эта логика соблюдалась ранееУбрать совсем?убирайтеНу, допустим, во время работы советника на реалы Вы захотели посмотреть другой ТФ. После переключения ТФ вся арифметика канала слетит.Оно Вам надо?у меня обычно 2 графика, 1чистый с совой, а другой со всякими индикаторами. мне не критичноне в "тему" это давно так, возможно такие настройки сайта. Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 Покапаю.А какие настройки оптимальные для параметра "Количество баров" и на каком ТФ? 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 Bar_analys = 800; М15В тестере так гоняю Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 Еще раз прошелся по логике совы:1. Определяется канал по, допустим, 800 барам.2. Находим среднюю линию.3. От Средней линии отступаем n-пунктов вверх/вниз. Параметр Dist=200. Вот с этим каналом и работаем.4. Если цена находится ниже нижней границы канала, то появляется сигнал на покупку.5. В исходном коде, если цена шла против ордера, строилась сетка, но при установке фиксированного СЛ все время будет открываться ордер в том же направлении, что и последний закрытый по стопу ордер.Я вижу выход в анализе пересечения ценой границы канала:а) если пересекает нижнюю границу снизу вверх, то открываем БАЙ.б) если цена пересекает верхнюю границу сверху вниз, то открываем СЕЛЛ. Либо проверять, находится ли цена между центром и границей, т.е внутри канала, при этом желательно, чтобы ближе к границе.Короче, от исходника останется только рисовалка линий :)) И еще не очень понял Ваше объяснение с картинкой: там упомянаются лимитники на расстоянии от средней линии, но в сове их нет... 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 1. Определяется канал по, допустим, 800 барам.Да2. Находим среднюю линию.Да3. От Средней линии отступаем n-пунктов вверх/вниз. Параметр Dist=200. Вот с этим каналом и работаем.Да4. Если цена находится ниже нижней границы канала, то появляется сигнал на покупку. за пределами канала ничего не открываем, ждем когда зайдет в канал. работаем на отбой от границ канала5. В исходном коде, если цена шла против ордера, строилась сетка, но при установке фиксированного СЛ все время будет открываться ордер в том же направлении, что и последний закрытый по стопу ордер.если получили фикс СЛ- ничего не открываем. Сидим курим и ждем когда цена вернется во внутрь канала.Я вижу выход в анализе пересечения ценой границы канала:а) если пересекает нижнюю границу снизу вверх, то открываем БАЙ.нет см. скринб) если цена пересекает верхнюю границу сверху вниз, то открываем СЕЛЛ.нет см скринЛибо проверять, находится ли цена между центром и границей, т.е внутри канала, при этом желательно, чтобы ближе к границе.проверять находится ли цена между границами каналаИ еще не очень понял Ваше объяснение с картинкой: там упомянаются лимитники на расстоянии от средней линии, но в сове их нет...это я вручную проверял, как работает стратегия. На границы канала ставил СеллЛимит на верхнюю(красная линия) и БайЛимит на нижнюю(синяя линия)http://fxpics.ru/images/2017/06/15/KANAL.jpg Ссылка на сообщение Поделиться на другие сайты More sharing options...
Старик Опубликовано 15 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 15 июня, 2017 п.с. не в "тему": почему при ответе, если вставляешь из буфера обмена кусок текста, он самопроизвольно принимает какие-то настройки шрифта. Приходится руками удалять тэги форматирования. Честно говоря, задолбался. И появился этот глюк/фича относительно недавно... если вы о цитировании выделенной части поста, то, после копирования, нажмите кнопку предварительного просмотра - обычно разворачивается окно полного редактора и копировавшийся/цитировавшийся текст визуализируется штатно.Парни, вы бы сохраняли в боте имевшиеся возможности...Улучшение/развитие полной версии бота может пригодиться многим, а усеченная пока нужна лишь одному.Хотя бы не вырезайте, а комментируйте код... Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 16 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 16 июня, 2017 п.с. не в "тему": почему при ответе, если вставляешь из буфера обмена кусок текста, он самопроизвольно принимает какие-то настройки шрифта. Приходится руками удалять тэги форматирования. Честно говоря, задолбался. И появился этот глюк/фича относительно недавно... если вы о цитировании выделенной части поста, то, после копирования, нажмите кнопку предварительного просмотра - обычно разворачивается окно полного редактора и копировавшийся/цитировавшийся текст визуализируется штатно.Парни, вы бы сохраняли в боте имевшиеся возможности...Улучшение/развитие полной версии бота может пригодиться многим, а усеченная пока нужна лишь одному.Хотя бы не вырезайте, а комментируйте код... Старик, я не о предварительном просмотре, а о ситуации, когда тест вставляешь из буфера и, к нему применяется произвольное форматирование.По коду: я ничего не вырезал, Как раз комментировал, а по перспективности его развития есть ощущение, что будет рождаться что то типа Генерика.Добавлено: 16-06-2017 09:52:36если получили фикс СЛ- ничего не открываем. Сидим курим и ждем когда цена вернется во внутрь канала. Этого условия не было изначально. Добавлю. Цитата Я вижу выход в анализе пересечения ценой границы канала:а) если пересекает нижнюю границу снизу вверх, то открываем БАЙ.нет см. скринб) если цена пересекает верхнюю границу сверху вниз, то открываем СЕЛЛ.нет см скрин Ну, на Ваш графический комментарий посылаю графические вопросы. (см скрин). Как определить касание и отличить его от пробоя, и учесть, с какой стороны относительно линии подошла цена...? Цитата Либо проверять, находится ли цена между центром и границей, т.е внутри канала, при этом желательно, чтобы ближе к границе.проверять находится ли цена между границами канала если просто "внутри канала", то открытие около центральной линии не будет противоречить правилам.Не сочтите за занудство, но лучше сразу проговорить все детали, чем потом по мере внесения изменений исправлять...Q.jpg Изменено 16 июня, 2017 пользователем usver73 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 16 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 16 июня, 2017 Как определить касание и отличить его от пробоя, и учесть, с какой стороны относительно линии подошла цена...? неважно касание или пробой границы канала, главное чтоб это произошло из нутри канала. представьте, что на красной линии стоит СеллЛимит, а на сеней БайЛимит, что должно произойти чтоб они вошли в рынок. я не знаю как лучше обьяснить. Скрины с тестераСейчас только дошло, что я не могу увидеть в тестере, как цена входит в канал. У оригинала нет стопа и он закрывает ордера при касании белой линии(центра канала), то есть цена всегда находится внутри канала после закрытия ордера и перед открытием следующих ордеров. Если для вас будет проще, то можно выставлять лимитки на границах канала как только цена вошла в канал(свеча закрылась внутри канала и сразу ставятся лимитки как даст цена или допустим когда цена прошла 2-3(30новых)п от границы внутрь канала) главное чтоб они потом двигались вместе с каналом. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 16 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 16 июня, 2017 неважно касание или пробой границы канала, главное чтоб это произошло из нутри канала. Ну вот, докопались до истины :) 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 18 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 18 июня, 2017 Короче, попробовал по-разному: и с учетом направления движения цены и просто при касании ценой границы канала.В первом случае было много пропусков: я так и не смог определиться с алгоритмом расчета направления цены. Пробовал сравнивать цену последнего закрытого бара на М1, пробовал сравнивать цену потиково. Либо медленно, либо пропуск момента касания ценой канала (если свечки на М1 маленькие, как правило меньше спрэда).В случае просто касания границы канала (+/- 10 пп ) получился практически такой же результат, но гораздо быстрее.ИМХО, без глобального изменения стратегии советник бестолковый. AUDNZD_Flat_Lock.v3.1.mq4 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 27 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 27 июня, 2017 usver73, вы писали, что индикация в окне не влияет на работу советника. Вчера при 2 открытых чужих ордерах, сов не открывал сделки. После их закрытия, открыл. Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 27 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 27 июня, 2017 usver73, вы писали, что индикация в окне не влияет на работу советника. Вчера при 2 открытых чужих ордерах, сов не открывал сделки. После их закрытия, открыл. Вы не поверите, но индикатор действительно не влияет на работу советника :)) Он просто отражает текущую ситуацию.А вот наличие "чужих" ордеров, действительно, может ограничить работу советника.Поправлю...Добавлено: 27-06-2017 06:58:45Вроде поправил, но проверить не могу- надо на демо гонять.Если что, пишите..И еще, sever51, Вы торгуете этим советником или есть результаты в тестере?Поделитесь, может действительно стоящая идея? ;) AUDNZD_Flat_Lock.v3.2.mq4 Изменено 27 июня, 2017 пользователем usver73 3 Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 27 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 27 июня, 2017 пока хвастаться нечем, в лучшем случае пила 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 27 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 27 июня, 2017 А Вы пробовали другие советники, торгующие в канале? Тема, в общем то "избитая"... 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
sever51 Опубликовано 27 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 27 июня, 2017 usver73, большая часть построена на ББ или ТМА, этот сов привлек внимание оригинальностью построения канала. Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 27 июня, 2017 Поделиться Доработка советников: общая тема Опубликовано 27 июня, 2017 Ну не знаю, что в нем оригинального...1. запаздывает за счет большого кол-ва баров для анализа.2. Ширина т.н. "рабочего" канала -жесткая и никак не коррелируется с основным торговым диапазоном, от которого строится. Т.е. цена вышла за "рабочий" канал и пошла к границе своего диапазона, от которого скорее всего и будет отбой (это если мы во флэте), а мы поймали стоплосс... Ссылка на сообщение Поделиться на другие сайты More sharing options...
remembaaa Опубликовано 5 июля, 2017 Поделиться Доработка советников: общая тема Опубликовано 5 июля, 2017 Здравствуйте, уважаемые программисты.Сов открывает ордер в сторону пересечения гистограммы нулевого уровня по закрытию бара.Поменяйте пожалуйста открытие ордеров не по рынку, при появлении сигнала, а чтобы сов выставлял лимитник, в стророну сигнала, на удалении от цены скажем на пунктов 100. И возможность прописывать комментарии к ордерам из настроек совы.Заранее благодарю! MACD_Cross_Martingale_EA_v301.mq4 Изменено 6 июля, 2017 пользователем remembaaa Ссылка на сообщение Поделиться на другие сайты More sharing options...
scomoroh Опубликовано 8 июля, 2017 Поделиться Доработка советников: общая тема Опубликовано 8 июля, 2017 Здравствуйте. Есть индикатор от советника Август Голем. Ломанный соаетник перестал работать. Помогите написать советник. Входы по сигналу. ПО одному сигналу на бар. При повторе сигнала, если идем не в нашу сторону так же открываем ордера. В общем делаем сетку, которую закрываем по обратному сигналу или по Общему ТП. ТФ 1 минута.Можно вообще в советнике http://tlap.com/forum/sovetniki-foreks/11/sovetnik-martingeyl-survivor/15463/ заменить параметры входа на входы по прилагаемому индикатору, ну или добавить.Сами сигналы появляются только пр прогоне в тестере. Нет стрелочек, только рисует какие-то кружочки. AugustForexGolem_v2-i1.ex4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 13 июля, 2017 Поделиться Доработка советников: общая тема Опубликовано 13 июля, 2017 Здравствуйте, уважаемые!Споткнулся на, казалось бы, обкатанной теме выставления общего ТП у всех ордеров сетки = Цена БУ+ nn - пипсов. На коротких сетках (1-2-3-4 ордера) ТП ставится правильно. Если сетка 8 и более ордеров, то результат - ТП от 3-5 пп до отрицательной величины. Какую-то зависимость выявить не смог. Свопы и комиссии ни при чем.Вызывается установка ТП после открытия ордера: int ticket=OpenOrder(Type_order,nextLots,OrderPrice,comment,Magic,clrLime);if (ticket>0) SetTakeProfit(OP_BUY, false); Функция SetTakeProfit:void SetTakeProfit(int orderType, bool Zero) { double newTakeProfit =0; int rezModif =false; double PriceBE = GetPriceBE(orderType); //получение цены БУ GetPriceBE_773(orderType); //вызов еще одной функции расчета БУ для сравнения результатов. if (!Zero) //если не обнуление, то считаем новый ТП. Обнуление ТП работает при включении трала { int Base_TP = 0;//Base_TP; int result = 0; int Count_ord=0; if (orderType==OP_BUY) {Count_ord=countBUY; Base_TP=TakeProfitB;} if (orderType==OP_SELL) {Count_ord=countSELL;Base_TP=TakeProfitS;} result = Base_TP;// не обращайте внимание на "лишние" переменные. Часть кода (не имеющего отношения к вопросу) вырезана для форума if (orderType==OP_BUY ) newTakeProfit=NormalizeDouble(PriceBE + result*Point,Digits); if (orderType==OP_SELL) newTakeProfit=NormalizeDouble(PriceBE - result*Point,Digits); } PutHLine(0,StringConcatenate("Beline",orderType),PriceBE,Color(orderType),0,2,false,"comment"); //рисуем линию БУ //в цикле устанавливаем новый ТП для всех ордеров for (int order=OrdersTotal()-1; order>=0; order--) { returnvalue=OrderSelect(order, SELECT_BY_POS, MODE_TRADES); if (OrderSymbol()==Symbol() && OrderMagicNumber()==Magic && OrderType()==orderType) { rezModif=ModifyOrder (OrderOpenPrice(),OrderStopLoss(),newTakeProfit, CLR_NONE); } } } //========================================================================================= И, наконец, два варианта функции GetPriceBE (расчет цены БУ)://========================================================================================= double GetPriceBE(int orderType)//расчет цены безубытка. Отдельно для БАЙ и СЕЛЛ { double TotalLots=0; double TotalProfit=0; double Price=0; double avgPrice = 0; for (int i=OrdersTotal()-1;i>=0;i--) { if (OrderSelect(i,SELECT_BY_POS)) { if (OrderSymbol()==Symbol() && OrderType()==orderType && OrderMagicNumber()==Magic) { TotalLots += OrderLots(); TotalProfit += OrderProfit()+OrderCommission()+OrderSwap(); avgPrice += OrderOpenPrice()*OrderLots(); } } } double TickValue=MarketInfo(Symbol(),MODE_TICKVALUE); if (orderType==OP_BUY && TotalLots>0) Price = NormalizeDouble(Bid-(TotalProfit/(TickValue*TotalLots)*Point),Digits); if (orderType==OP_SELL && TotalLots>0) Price = NormalizeDouble(Ask+(TotalProfit/(TickValue*TotalLots)*Point),Digits); Print(__FUNCTION__ , " : Price BE ", DoubleToStr(Price,Digits)); return(Price); } И вторая://===========расчет цены безубытка. Из версии 7.7.3 =================================== void GetPriceBE_773(int orderType) { double avgPrice = 0; double sumLots = 0; for (int order=OrdersTotal()-1; order >= 0; order--) { returnvalue=OrderSelect(order, SELECT_BY_POS, MODE_TRADES); if (OrderSymbol()==Symbol() && OrderType()==orderType && OrderMagicNumber()==Magic) { avgPrice += OrderOpenPrice()*OrderLots(); sumLots += OrderLots(); } } double newTakeProfit=avgPrice/sumLots; Print(__FUNCTION__ , ": Price BE ", DoubleToStr(newTakeProfit,Digits)); } Если в первой функции БУ убрать учет свопов и комиссии, то обе функции дают абсолютно одинаковый результат (по крайней мере на EURUSD).Вот, прошу помощи у опытных программистов.На всякий случай сова во вложении.Заранее спасибоSpring_V8.12.2.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
DreamWorks Опубликовано 13 июля, 2017 Поделиться Доработка советников: общая тема Опубликовано 13 июля, 2017 Здравствуйте! Вторая функция расчета уровня безубытка выглядит правильно. В первой функции подсчитывается переменная double avgPrice, но после нигде в расчетах не участвует, за то в расчетах присутствует TickValue, который меняется по мере изменения курса пары. Думаю весь Ваш вопрос сводится к тому, что уровень безубытка на момент расчета правильный, но по мере того как изменяется курс пары, то изменяется и стоимость пункта инструмента (TickValue). Отсюда и неточность расчета уровня нулевого профита. И дальнейшая неточность расчета уровня общего тейка сетки. Видится выход в периодической корректировке этого уровня. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 13 июля, 2017 Поделиться Доработка советников: общая тема Опубликовано 13 июля, 2017 Здравствуйте! Вторая функция расчета уровня безубытка выглядит правильно. В первой функции подсчитывается переменная double avgPrice, но после нигде в расчетах не участвует, за то в расчетах присутствует TickValue, который меняется по мере изменения курса пары. Думаю весь Ваш вопрос сводится к тому, что уровень безубытка на момент расчета правильный, но по мере того как изменяется курс пары, то изменяется и стоимость пункта инструмента (TickValue). Отсюда и неточность расчета уровня нулевого профита. И дальнейшая неточность расчета уровня общего тейка сетки. Видится выход в периодической корректировке этого уровня. avgPrice- это наследие из второй функции, когда методом "научного тыка" таскал куски кода отовсюду, забыл почистить. Во втором способе расчета БУ не учитывается своп. И если в первой закомментировать своп и комиссию, то обе функции дают одинаковый результат (специально Принты в конце прописаны).Что касается TickValue, то Ваше утверждение справедливо для кроссов и пар с прямой(?) котировкой (В тестере вообще не меняется, специально проверил). Косяк же проявляется на всех парах, в т.ч. где TickValue не меняется вообще (например, EURUSD). И перерасчет ТП по-сути происходит каждый раз при выставлении очередного ордера. В советнике можно включить ежесуточный пересчет ТП для компенсации свопов....не помогает. Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 13 июля, 2017 Поделиться Доработка советников: общая тема Опубликовано 13 июля, 2017 DreamWorks ТП модифицируется практически в момент расчёта БУ, поэтому дальнейший курс роли не играет, имхо...Я не нашёл ошибок, сам считаю по текущей просадке и стоимости пипса.Немного смущает сам вопрос - при сетке более 8 ордеров становится неправильным расчёт БУ (в обоих случаях)? или косяк в дальнейшем расчёте ТП, или при модификации ордера? как Вы узнали о неправильном ТП у ордеров? 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти