0
В каком месте замки? Полные или худые? В какой ломбард коллекцию нести?

Да. И что за кем здесь тогда тянется? Тянучка же.
avatar

kvashnin007

  • 7 февраля 2025, 02:16
0
Всем удачи
avatar

kvashnin007

  • 7 февраля 2025, 02:12
0
Пробой рактала. Или ZZ, или экстремумов свечей. Каких-то там уровней, полос…
Это то, что вы хотите отработать.

А вот то, как это делать — это уще стратегия.

Ну вот вам, например, простейшая (тем не менее эективная):

Берете правильно настроенный ZigZag, выставляете его на Н1. После образования очередного экстремума высталяете стоповый ордер на пробой экстремума по очереди вверх, затем вниз. После получения рыночного ордера SL выставляете по ближайшему экстремуму ZigZag на М5. При появлении очередного экстремума на М5 переносите SL в него. И так пока не закроется ордер. ТР здесь мной не наблюдается.

Это идея.
А вот над стратегией надо поработать.

А вариантов тьма:
— ограничение по времени работы.
— что делать если SL будет меньше минимального StopLevel. Тоже есть варианты.
Просто постоянно сравнивать цены, рисовать линии, при касании которых...,
ставить минимально разрешенный стоп. Ит.д.
— сколько открытых ордеров допускается.
— какие тайминги использовать?
— да и еще всякой всячины немеряно.

Вот это все и будет стратегией.
avatar

kvashnin007

  • 7 февраля 2025, 02:09
+1
Привет, Руслан.
На счет права согласен. Не раз сам писал, что даже самая глупая идея может стать вишенкой на торте. А идея то где? Тралим за ценой стоповую отложку для создания замка. Это идея? SellStop? Замок сделали и что дальше?

Руслан, я не про идею. Я о том, чтобы воплотить свою идею, ее надо вначале формализировать. Если то, то ТО, а если это, то ЭТО.

И уж точно, не хотел никого обидеть.
Если так выглядит, приношу извинения.
avatar

kvashnin007

  • 7 февраля 2025, 01:35
0
За секунду можно сотни команд брокеру дать. И не всегда брокер на это обращает внимание. Обычно он реагирует на пипсы. Но в целом вы правы. От того что вы или куча др. трейдеров задалбываете брокера, теряете и вы в том числе. Реквоты, проскальзования… Откуда это берется?
avatar

kvashnin007

  • 6 февраля 2025, 09:38
0
Стоповыми ордерами врядли удастся сделать замок. Нужны лимитники. Тянуть можно линию у себя в терминале, при касании ценой которой открывается сразу рыночный ордер. В чем смысл ТР не понимаю. У вас актически трал SL. И что вы собираетесь делать с замками? Коллекционировать?

И вообще. Ваше ТЗ не выдерживает никакой критики. По причине такового отсутствия. Я, например, не понимаю, за что вы хотите дать денег. Дайте мне и, я вам что нибудь напишу. Хоть на 20 килобайт.

Вначале продумайте ТЗ, а потом уже предлагайте денег. Это нужно и вам и программисту.
avatar

kvashnin007

  • 6 февраля 2025, 09:31
0
Думаю, надо покончить с одинарным вариантом, а потом уже заняться половой жизнью.
avatar

kvashnin007

  • 5 февраля 2025, 06:17
0
Утро только настало. То был еще вечер.Спасибо.

Хорошнго дня.
avatar

kvashnin007

  • 5 февраля 2025, 06:13
0
Полежал на левом боку, подумал.
Фактически Aleh7999 предлагает элементы локирования. Это не навредит, но значительно усложнит не столько алгоритм, сколь увеличивает количество настроек.

Выводы не утишительные:

Надо делать две отдельные ветви BUY и SELL. Каждую со своим комплектом настроек.
Чтобы они кешировали друг друга, они должны работать параллельно сами по себе
со своими настройками.

Кроме того каждая из ветвей должна иметь свои настройки для тренда вниз и вверх
раздельно. Это даст очень положительный эффект, но гораздо усложнит оптимизацию.

Фактически оптимизировать надо будет четыре советника. Печалька.

Зато… Если… То…

avatar

kvashnin007

  • 4 февраля 2025, 23:30
0
Привет.

Это абсолютно другая стратегия. Тоже имеет право на существование.
В этой же стратегии предпологаются лимитные ордера. Но есть ложка дерьма. И не одна.

Стоповые ордера видит брокер. Это наименьшее зло.
Я в размышлениях про тралы чуть выше высказал одну интересную мысль.
За минимальный профит. При работе с рыночными ордерами, я их могу открывать хоть через пипс, а отложки не ближе levelstop. А это 15-50 раз сужает оперативные просторы.
Я понимаю за проскальзывание, реквоты и прочую дрянь. Но они не зависят от шага ордеров. И тоже, хоть и в меньших размерах, гадят торговле.

А о том, что настройки при тренде вверх или вниз должны отличаться, я писал выше (МА60).

На счет «прогонял». Я тоже прогонял. И получал без особой оптимизации на тиках очень приличные результаты. Я там делился своим методом оптимизации. Посмотрите. Попробуйте.

На счет трала. Писал. И не один вариант. Работаю над этим. Здесь специфика.
Готовый не подойдет. Пробую писать с ноля. Уперся в ошибки. Борюсь.

Далее. Это все же трендовая торговля с усреднением откатов. Открываем ордер по тренду с ТР. Если цена не достига ТР и развернулась усредняемся. Увеличение заработков в этой стратегии за счет откатов. Повышается лотность и улучшается цена позиции. Главное не добаловать при этом до кочерги. Но это уже другой вопрос.
avatar

kvashnin007

  • 4 февраля 2025, 22:44
0
Вчерашня мысль:
Советник должен сам подхватывать сопровождение ордеров, после перезапуска.

Поразмышляю дальше.
Сегодня про тралы для этого советника.

Тралить SL каждого ордера нельзя. Нарушается логика советника.

Тралить БУ под вопросом. Общий БУ? А в какую сторону?

Тралить БУ отдельно для ордеров на покупку, отдельно на продажу?
В принципе можно. При условии, что цена оторвалась от БУ в плюс на дистанцию трала.
Можно попробовать. Хотя линия роста депозита будет делать скачки вверх.
Ступенчатый рост депозита. При этом логику советника мы не нарушим.
Ибо к тому моменту, когда ордера выйдут в плюс, «крайних» ордеров уже не будет.
ТР обнуляем, чтобы уже не мешал тралу, а тралим общий БУ направления.
Получится виртуальный трал. И stoplevel под ногами не будет путаться.
Есть в этом зерно. Надо пробовать.

Идем дальше. Трал общего профита.
Ститаю это направление наиболее перспективным.

Объясню:
Если дистанцию трала взять большой, то он практически не вмешивается в логику советника.
Но при этом даст прирост в части дохода. Правда линия депо станет несколько рваной.

Если мы возьмем мизерную дистанцию трала, то мы практически вытягиваем в струну
линию роста депозита. Эквити под ней Не увидишь.
Что у нас получится?
Для того, чтобы ордер дал минимальную прибыль достаточно легкого изменения цены.
Такое движение часто при большой волатильности. Поэтому мы часто сможем закрывать ордера
с минимальным профитом. Эквити даже просесть не успел, а у нас уже новые ордера с малым шагом.

Так по зернышку, но часто с минимальной просадкой… Линейка не нужна.
А за возврат спреда вообще… молчать не буду.

Тут де-то, когдато видел трал-удавку. Исполнение отстой, а идея хорошая. Тоже в обсуждение.
avatar

kvashnin007

  • 4 февраля 2025, 21:13
0
Александр, доброго. Киньте пожалуйста сову в депозитарий. У меня таже проблема. Не нравится модераторам мой латинский.
avatar

kvashnin007

  • 4 февраля 2025, 18:29
0
Надоела эта латиница. Особенно ошибки 134.
Решил просто поразмышлять.

1. Такие советники я отношу к «сливным». За ним нужен будет глаз да глаз.
По-этому надо будет предусмотреть вариант(ы) защиты. Мысли есть, но потом.

2. Фиксированный шаг вещь попроще, но, думаю, динамический должен быть круче.
— Можно привязаться к какому нибудь индюку (какая гадость).
— Можно тралить за ценой Лимитку, по какому-нибудь прогрессивному алгоритму.
— Проще сделать «псевдотрал по свечам». Потом попробую.

3. Тренд то вверх, то вниз. А переменные не меняются. Типа универсальные.
Лучше универсального только индивидуально-частное. Во загнул.
Думаю советник надо будет «раздвоить».
Например, МА60 (период подберем) вверх — одна история, вниз — вторая.

4. Трал минимальной прибыли значительно снизит просадку.
А прибыльность «восстановится» за счет возросшего количества ордеров.
Кстати, программа возврата спреда, еще значительнее повысит доход.
Куплю жене сапоги. Скороходы.

5. Еще один момент, который почти все и почти всегда упускают.
Кто часто тестирует всякого рода советников, часто замечает красивую линию роста
депозита, которая заканчиватся «кочергой». Вы делаете вывод: настройки гУвно.
На самом деле настройки здесь ни причем. Если посмотрите результаты теста, то увидите,
как в конце периода тестирования закрываются все ордера. Причем, часто в крупный минус.
Если бы период тестирования продлился дольше, возможно, эти ордера дали бы приличный
профит. Ладно. Это все лирика. К чему тобишь я?
Если вам необходимо остановить работу советника (например, чтобы снять деньги
со счета брокера) надо создать кнопку "ХОЧУ ДЕНЕГ", активация которой плавно
закроетвсе ордера по алгоритму советника, не будет открывать новые начальные ордера,
пока кнопку не отожмем назад.

Засыпаю. Мысли тю-тю.
Доброй ночи.
.
avatar

kvashnin007

  • 4 февраля 2025, 01:46
0
Пока такой вариант. Сам по себе уже рабочий. Но… Будем улучшаться. Есть еще куда.



Тестирование «приблизительно». Время 3 месяца.EURCHF.М5. Абс. просадка 24%.

Как я оптимизирую:
SL=0. М5, М15, М30, Н1.
Можно и SL до кучи в оптимизацию включить.
Даже результаты приличные получить.
Но график получается «рваный», что говорит о нестабильности.

Оптимизацию провожу по ценам закрытия.
Выбираю вариант переменных с прибылью ±10% в месяц при минимальной просадке.
Проверяю на тиках. Как правило прибыль увеличивается, а просадка уменьшается.
avatar

kvashnin007

  • 3 февраля 2025, 23:09
0
Пришла мысль во сне: вот был наш ордер крайним, выставили мы ему ТР в безубыток+, а… не случилось. Не сократился он, а появился новый крайний. Думаю, надо восстановить уже не крайнему ТР в правильное положение. Добавил пару строк.

<code>                    if(OrderType()==OP_BUY && b==1 && tp==0)
                      {
                      //--- Выставляем стопы и тейки одиночным ордерам на покупку ---------
                      if(b==1 && tp==0)
                        {
                        sl=0; tp=0;
                        
                        if(StopLoss>0)
                           sl=NormalizeDouble(Ask-StopLoss*Point(),Digits());
                        if(TakeProfit>0)
                           tp=NormalizeDouble(Ask+TakeProfit*Point(),Digits());
                    
                        if(!OrderModify(tk,op,sl,tp,0,clrBlue))
                           Print("OrderModify error №1 #",GetLastError());
                        }
                      //--- Выставляем ТР крайних ордеров на покупку в безубыток + ---------
                      if(b>=CountAverage && (tk==BuyPriceMaxTic || tk==BuyPriceMinTic))
                        if(Bid<AverageBuyPrice && tp!=AverageBuyPrice)
                           if(!OrderModify(tk,op,OrderStopLoss(),AverageBuyPrice,0,clrBlue))
                              Print("OrderModify error №3 #",GetLastError());
                           
                      //--------- Восстановление ТР не крайним ордерам OP_BUY --------------
                      if(tk != BuyPriceMinTic && tk != BuyPriceMaxTic)     
                       if(tp!= NormalizeDouble (op + TakeProfit * Point(), Digits()))
                         if(!OrderModify(tk, op, OrderStopLoss(), NormalizeDouble (op + TakeProfit * Point(), Digits()), 0, clrBlue))
                           Print("OrderModify error №5 #", GetLastError());
                      }
                     //---------------------------------------------------------------------

</code>

Аналогично и ордерам на продажу.

Нашел логические ошибки. Подредактировал.
avatar

kvashnin007

  • 3 февраля 2025, 10:07
0
Спасибо.

Все делаю по такому же феншую, а сайт постоянно требует поменять латиницу, видимо, на не ворованную.
avatar

kvashnin007

  • 3 февраля 2025, 09:05
0
Одна клавиша на компе западает. Именно «ф-a». Вроде просматриваю писанину, а пропустил.
avatar

kvashnin007

  • 3 февраля 2025, 09:04
0
Благодаря OSS5 мы снова имеем файл в удобном и доступном виде.

www.opentraders.ru/downloads/3950/

Спасибо.

OSS5, поделитесь таки возможностью. Что у меня не так?
avatar

kvashnin007

  • 3 февраля 2025, 07:34
0
Андрей, спасибо. У меня есть еще чего добавить. В инете максимум обращений к брокеру сводим к глобальным переменным. Далее работаем у себя на поле. И еще… Пока не смотрите на цены открытия. я у себя имею и по тикам. Просто сейчас тики отримают много времени.

<code>string txt,symbol ;
int    slippage, StopLevel, digits;
double pnt, sl$, tp$;
//+----------------------------------------------------------------------------+
int init()
{
      symbol    = Symbol();
      pnt       = SymbolInfoDouble(symbol,SYMBOL_POINT);
      StopLevel = (int)SymbolInfoInteger(symbol,SYMBOL_TRADE_STOPS_LEVEL);
      digits    = (int)SymbolInfoInteger(symbol,SYMBOL_DIGITS);
      sl$       = SL*Point;
      tp$       = TP*Point;
      
      OpenOrder (OP_BUY, Ask);  
      OpenOrder (OP_SELL, Bid);  
    
   return(0);   
}
//+----------------------------------------------------------------------------+
int start()
{
    =Ask;  
    =Bid;  
    
  return(0);
}
//+------------------------------------------------------------------+
</code>
avatar

kvashnin007

  • 2 февраля 2025, 20:31
0
Просто красивая картинка.



В следующий раз добавлю пару вариантов сокращения ордеров.
Введу трал эквити.

А пока… Спать.
Доброй ночи.
avatar

kvashnin007

  • 2 февраля 2025, 20:08