Разработка советника Shot/Ashot

MQL5 Indicadores Experts

Trabalho concluído

Tempo de execução 18 dias

Termos de Referência

Пояснение о работе Trailing StopLoss


Параметры

TrailingStopLoss- стоплосс, который указывается в пунктах. Включается при достижении TrailingStopLoss+TrailingPoints

TrailingPoints- шаг перестановки трейлинга в пунктах. На сколько пунктов переставлять линию Trailing.

TrailingTakeProfit- высота биржевого ордера в пунктах, который будет ловить прострелы вверх.

TrailingTakeProfitStep- на сколько пунктов поднимать TrailingTakeProfit через время TrailingTakeProfitWait.

TrailingTakeProfitWaitсекунд - через какое время, после роста переставлять TrailingTakeProfit выше.

После того, как запустится Trailing, на графике появляется линия, которая следует за ценой исходя из настроек. Рисуем синим цветом.

  • Вошли в сделку.
  • После роста на параметр TrailingStopLoss - пока ничего не происходит.
  • После роста на TrailingStopLoss+TrailingPoints выставляется стоплосс на уровне TrailingStopLoss.
  • После роста цена на TrailingPoints переставляется TrailingStopLoss на это количество пунктов.
  • В момент, когда произойдёт TrailingStopLoss+TrailingPoints выставляется TrailingTakeProfit на указанное количество пунктов от начальной цены.
  • После каждой перестановки уровня TrailingStopLoss отсчитывается время TrailingTakeProfitWait и цена переставляется на TrailingPoints.

Пример:

TrailingStopLoss= 50 пунктов

TrailingPoints= 30 пунктов

TrailingTakeProfit= 150 пунктов

TrailingTakeProfitStep= 20 пунктов

TrailingTakeProfitWait= 300 секунд

  1. Вошли в сделку. Выставляем тейкпрофит лимиткой на уровне 150 пунктов.
  2. Цена поднялась на 50 пунктов - ничего не происходит.
  3. Цена поднялась на 50+30 пунктов - выставляется стоплосс на уровне 50 пунктов.
  4. Цена поднялась на 50+30+30=110 пунктов. Считаем 300 секунд и поднимаем тейкпрофит на 150+20=170 пунктов. Если в течение 300 секунд цена дойдёт до 150 пунктов, то произойдёт продажа. Если за 300 секунд цена не поднялась на уровень 150 пунктов, то уровень тейкпрофита переставляется на уровень 150+20=170 пунктов.
  5. Если цена не дошла до уровня тейкпрофита и пошла вниз, то произойдёт продажа на уровне стоплосса.

Пояснение о TrailingBuyStop

TrailingBuyStop(TrailingSellStop для шортов). Пояснения ниже касаются лонгов. Для шортов ситуация обратная.

После срабатывания сигнала включается TrailingBuyStop выше точки срабатывания на указанное количество пунктов.

Если цена снижается на это количество пунктов, то TrailingBuyStop переставляется на это количество пунктов.

Если цена поднимается и касается этого уровня, то происходит покупка по маркету.

Рисуем линию TrailingBuyStop красным цветом на графике.


Параметры стратегии Shot

! Пояснения о том, как строится параметр Shot даны внизу.

TF1- смотрим ситуацию на TF1 и отслеживаем Shot, Ashot (1m,5m,15m,30m,1h)

Shot1- глубина построения линии под графиком в пунктах. Отображается на экране.

ColorS1 -выбор цвета линии Shot1.

Lot- фиксированный лот. Если 0, то смотрит на Risk.

Risk- % от депозита. Если 0, то смотрит Lot.

TypeOfBuy(раскрывающийся список)- Limit/MarketOncePerBar/MarketOncePerBarClosed.

  • MarketOncePerBar- покупает по рынку сразу же на открытой свече, когда происходит событие.
  • MarketOncePerBarClosed- покупать после закрытой свечи, как произойдет событие.
  • Limit- переставляет лимитки по индикаторам. Т.е. ловит нужный уровень и покупает лимиткой.

TrailingBuyStop- если 0, то не работает. Указывается в пунктах. Описано выше

TypeOfSell(раскрывающийся список)- Выбор TakeProfit, Trailing.

TakeProfit- фиксированная цена в пунктах. Тейк виртуальный. Не проставляем заранее у брокера. Если 0, то ручное закрытие сделок. 

StopLoss- фиксированный уровень в пунктах. СтопЛосс виртуальный. Не проставляем заранее у брокера. Если выбран Trailing, как вариант продажи, то работает, пока не сработает Trailing.

Breakeven- безубыток. Указывается в пунктах. Работает только с включенным TakeProfit.

TrailingStopLoss- пункты.

TrailingPoints- пункты.

TrailingTakeProfit- пункты.

TrailingTakeProfitStep= пункты.

TrailingTakeProfitWait= пункты.

BuyAfterStopLoss (Yes/No)- покупка в точке изначального стоплосса. Если закрывается сделка по стопу - покупаем опять.

BuyAfterStopLossLot -размер лота. Если 0, то не работает.

BuyAfterStopLossRisk - %от депозита.


Далее мы дублируем те же функии для других таймфреймов.

! ЕСЛИ СТОЯТ НУЛИ В ТФ, то не используем этот блок настроек. Всего делаем для 5 таймфреймов. Т.е. будут в итоге TF1, TF2, TF3, TF4, TF5 и соответственно Shot 1, 2, 3, 4, 5


TF2- смотрим ситуацию на TF1 и отслеживаем Shot, Ashot (1m, 5m, 15m, 30m, 1h)

Shot2- глубина построения линии под графиком в пунктах.

ColorS2 -цвет линии. Shot2

Lot- фиксированный лот. Если 0, то смотрит на Risk.

Risk- % от депозита. Если 0, то смотрит Lot.

TypeOfBuy(раскрывающийся список)- Limit/MarketOncePerBar/MarketOncePerBarClosed.

  • MarketOncePerBar- покупает по рынку сразу же на открытой свече, когда происходит событие.
  • MarketOncePerBarClosed- покупать после закрытой свечи, как произойдет событие.
  • Limit- переставляет лимитки по индикаторам. Т.е. ловит нужный уровень и покупает лимиткой.

TrailingBuyStop- если 0, то не работает. Указывается в пунктах. Описано выше.

TypeOfSell(раскрывающийся список)- Выбор TP или Trailing.

TakeProfit- фиксированная цена в пунктах. Тейк виртуальный. Не проставляем заранее у брокера.  Если 0, то ручное закрытие сделок. 

StopLoss- фиксированный уровень в пунктах. СтопЛосс виртуальный. Не проставляем заранее у брокера. Если выбран Trailing, как вариант продажи, то работает, пока не сработает Trailing.

Breakeven- безубыток. Указывается в пунктах. Работает только с включенным TakeProfit.

TrailingStopLoss- пункты.

TrailingPoints- пункты.

TrailingTakeProfit- пункты.

TrailingTakeProfitStep= пункты.

TrailingTakeProfitWait= пункты.

BuyAfterStopLoss (Yes/No)- покупка в точке изначального стоплосса. Если закрывается сделка по стопу - покупаем опять.

BuyAfterStopLossLot -размер лота. Если 0, то не работает.

BuyAfterStopLossRisk - %от депозита.


Параметры стратегии Ashot

! Описание параметра Ashot дано внизу.


TF1- смотрим ситуацию на TF1 и отслеживаем Ashot.

aShot1- глубина построения линии над графиком в пунктах.

ColorA1 -цвет линии Ashot1.

Lot- фиксированный лот. Если 0, то смотрит на Risk.

Risk- % от депозита. Если 0, то смотрит Lot.

TypeOfBuy(раскрывающийся список)- Limit/MarketOncePerBar/MarketOncePerBarClosed.

  • MarketOncePerBar- покупает по рынку сразу же на открытой свече, когда происходит событие.
  • MarketOncePerBarClosed- покупать после закрытой свечи, как произойдет событие.
  • Limit- переставляет лимитки по индикаторам. Т.е. ловит нужный уровень и покупает лимиткой.

TrailingSellStop- если 0, то не работает. Указывается в пунктах. Описано выше.

TypeOfSell(раскрывающийся список)- Выбор TP или Trailing.

TakeProfit- фиксированная цена в пунктах. Тейк виртуальный. Не проставляем заранее у брокера. Если 0, то ручное закрытие сделок. 

StopLoss- фиксированный уровень в пунктах. СтопЛосс виртуальный. Не проставляем заранее у брокера. Если выбран Trailing, как вариант продажи, то работает, пока не сработает Trailing.

Breakeven- безубыток. Указывается в пунктах. Работает только с включенным TakeProfit.

! Trailing для шортов работает по тому же принципу, что и для лонгов, но в обратную сторону.

TrailingStopLoss- пункты.

TrailingPoints- пункты.

TrailingTakeProfit- пункты.

TrailingTakeProfitStep= пункты.

TrailingTakeProfitWait= пункты.

BuyAfterStopLoss (Yes/No)- покупка в точке изначального стоплосса. Если закрывается сделка по стопу - покупаем опять.

BuyAfterStopLossLot -размер лота. Если 0, то не работает.

BuyAfterStopLossRisk - %от депозита.

Повторяем все функции для 5 таймфреймов, что и для Shot.


Общие настройки для всех стратегий

Spread- максимальная граница спреда. Выше границы спреда не покупает и не продаёт. Если купил при нормальном спреде, продает только тогда, когда опустится.

QuantityOfOrders- одновременное кол-во выставленных ордеров.

BuyOrNot(раскрывающийся список)- Yes/No. Yes - покупаем по стратегии. No - покупка не происходит. Просто срабатывает уведомление.

Indicator(раскрывающийся список)- Yes/No. Показывать или не показывать индикатор на графике. Помечать на графике потенциальные точки, где сработал бы бот.

Оповещение звуковое -Yes/No.

Push- Yes/No.

ВРЕМЯ РАБОТЫ БОТА

StartHour

StartMin

EndHour

EndMinute

FridayEndHour

MondayStartHour


Логика построения индикатора Shot/Ashot

Логика нахождения постановки сигнала + рисование линий. Писал на TradingView. Для параметров shot(ashot)2,3,4,5 строить аналогично. shot1 = input(0.1, title="Shot1",type=float) ashot1 = input(0.1, title="aShot1",type=float)

cross_shot1 = open>close ? close*(1-(shot1/100)) : open*(1-(shot1/100)) cross_ashot1 = open>close ? open*(1+(ashot1/100)) : close*(1+(ashot1/100))

condition1 = crossunder(low,cross_shot1[1]) condition11 = crossover(high,cross_ashot1[1])

plotshape(condition1, style=shape.xcross,location=location.belowbar, color=green, transp=0, size=size.tiny,title="BUY_shot1") plotshape(condition11, style=shape.xcross,location=location.abovebar, color=green, transp=0, size=size.tiny,title="BUY_ashot1")

alertcondition(condition1,title="BuyShot1",message="BuyShot1") alertcondition(condition11,title="BuyShot1",message="BuyShot1")

Логика покупки

1 вариант

  1. Срабатывание параметра Shot (1...5) или Ashot (1...5)

2 вариант

  1. Срабатывание параметра Shot (1...5)
  2. Если включен параметр TrailingBuyStop,то после нахождения нужной точки покупает.

3 вариант

  1. BuyAfterStopLoss

Логика продажи

В зависимости от выбора - TakeProfit фиксированный или TrailingStopLoss, или ручное управление сделкой, если TakeProfit = 0.



P.S. Если что-то непонятно, я поясню. Спрашивайте.


Respondido

1
Desenvolvedor 1
Classificação
(356)
Projetos
632
26%
Arbitragem
89
73% / 13%
Expirado
12
2%
Livre
2
Desenvolvedor 2
Classificação
(586)
Projetos
1048
49%
Arbitragem
39
28% / 41%
Expirado
49
5%
Livre
3
Desenvolvedor 3
Classificação
(564)
Projetos
933
47%
Arbitragem
302
59% / 25%
Expirado
125
13%
Carregado
4
Desenvolvedor 4
Classificação
(261)
Projetos
425
38%
Arbitragem
86
44% / 19%
Expirado
71
17%
Carregado
5
Desenvolvedor 5
Classificação
(58)
Projetos
76
33%
Arbitragem
9
78% / 11%
Expirado
7
9%
Livre
6
Desenvolvedor 6
Classificação
(66)
Projetos
143
34%
Arbitragem
10
10% / 60%
Expirado
26
18%
Livre
7
Desenvolvedor 7
Classificação
(142)
Projetos
280
42%
Arbitragem
18
61% / 6%
Expirado
29
10%
Livre
Pedidos semelhantes
Требуется MQL разработчик с большим опытом работы по написанию скриптов советника. Работа по техническому заданию клиента, все доработки по согласованию с клиентом, за отдельную плату. Предварительное, внимательное изучение поставленной задачи. Соблюдение четких сроков исполнения. Соблюдение конфиденциальности и предотвращения разглашения, утечки идеи и алгоритма
Модицикация и дополнение уже существующего советника. ..советник по управление открытыми позициями и лимитными ордерами на платформе МТ4 под свой стиль торговли.. работа с тейкпрофитом и закрытием позиций.. Более точно о нюансах при обсуждении задания.. Хотелось бы отклика Михаила Рудко

Informações sobre o projeto

Orçamento
100+ USD
Desenvolvedor
90 USD