Какие есть специфические параметры у стратегии MoonHook?

: Настройки стратегий

Специфические параметры стратегии MoonHook:

BuyOrderReduce: задает интервал (в мс), на котором считать средний объем торгов. Стратегия выставит ордер размером не больше, чем средний объем. По умолчанию 100 (мс).
Как считается объем: суммируется объем всех сделок (покупки и продажи) на интервале TimeInterval и делится на BuyOrderReduce.
Например, если TimeInterval = 5 сек (5000 мс), BuyOrderReduce = 100мс, объем за 5 сек был 10 000$, то средний объем за 100 мс будет равен 10000/5000мс*100мс=200$.
В этом случае стратегия поставит ордер не более 200$
Иначе говоря, смотрим какой же был средний объем за 100 (мс)/ 10мс/ 5мс, это и есть наш максимальный ордер какой выставит стратегия.
Если BuyOrderReduce=0, то параметр отключён и не будет учитывать объем торгов, в этом случае размер ордера будет определяться так::
– Если OrderSize=0, то размер ордера будет взят из основных настроек, он будет полным и не будет уменьшаться в зависимости от объема торгов.
– Если OrderSize=1000, то размер ордера будет взят из этой настройки, он будет полным и не будет уменьшаться в зависимости от объема торгов.
Работу функции уменьшения ордера можно увидеть в логе по такой записи:
BTC: [1] (40) Buy order reduced: 1000.00$ => 23.32$ (Vol: 23.32$)
В этом логе OrderSize в стратегии стоял 1000$, но средний объем торгов за 100мс составил всего 23$, поэтому стратегия выставила ордер на покупку размером 23$.
MinReducedSize: Если в результате применения BuyOrderReduce размер ордера получился меньше заданного значения (в USDT), то ордер не ставится и детекта соответственно не будет. По умолчанию 0 (не применяется).
HookTimeFrame: Интервал времени для анализа.
HookDetectDepth: Глубина детекта
HookDetectDepthMax: Глубина прострела не больше, чем это значение. Если 0, то не учитывается.
HookAntiPump: Если YES, то для расчета глубины детекта берется средняя цена перед детектом, что позволяет исключить прострелы сразу после быстрого роста. В существующих стратегиях параметр HookAntiPump включен по умолчанию, с этим параметром работа стратегии приближена к тому, что было до обновления.
HookPriceRollBack: Процент отката цены, в процентах от общей глубины. Например, 33% означает откат на треть от всего хода цены.
HookPriceRollBackMax: Ограничение роллбэка не больше, чем. Если 0 (по умолчанию), то не применяется.
HookRollBackWait: Время, в течении которого цена держится выше HookPriceRollBack (миллисек). Рекомендуемое значение 100мс позволит отсечь ситуации с 1 крестиком. Можно ставить и больше, но все событие прострела, отката и ожидания отката должно уложиться в HookTimeFrame сек.
HookDropMin, HookDropMax: падение цены перед детектом за последние 2 минуты, от и до. Считается в процентах от зафиксированной глубины прострела.
Например, произошел прострел на 10%. При этом монета уже падала 2 минуты и перед прострелом уже упала на 20%. Тогда HookDrop = 20 / 10 * 100 = 200% (т.е. предыдущее падение на 200% больше, чем сам прострел). Если 0, не учитывать.
HookDirection: Искать детекты только в лонг, только в шорт или в обе стороны
HookOppositeOrder: ставить ордер в обратную сторону (при детекте стрелы вниз ставить шорт вместо лонга)

HookInterpolate:
– Если 0, стратегия будет ставить ордер от верхней цены до прострела
– Если 1, стратегия будет ставить ордер от отката после прострела (от цены RollBack)
– Если 2, то отдается приоритет параметру HookInitialPrice
– Если 3, то ордер и коридор считаются от текущей цены относительно глубины прострела
– Если 4, то считается относительно глубины отката.

Если он противоречит коридору цены, то верхняя граница коридора двигается выше, на половину расстояния между Вашим ордером и текущей ценой.
Если это невозможно физически, то детект не срабатывает.
В этой логике уменьшена нижняя граница.
Аналогичная логика и на шорте и на лонге.

HookInitialPrice: куда ставить бай, в процентах от общей глубины.
Например, цена упала на 10% со 110 до 100. Если HookInitialPrice = 25%, то бай будет поставлен на 25% от 10%, т.е. на 2.5% выше нижней точки: 100 + 2.5% = 102.5. Возможно отрицательное значение – ставить бай еще ниже, чем нижняя точка падения.

HookPriceDistance: ширина коридора цены. В процентах от общей глубины детекта.
Например, был детект на 5% падения. HookPriceDistance = 10% будет означать, что ордер может ходить в пределах – верхняя граница 5-5/100*10=4,5%, нижняя граница 5+5/100*10=5,5% от текущей цены. Будет так же переставляться как МунШот при подходе к одной из границ. Если 0, то ордер не управляется, не ходит как в муншоте, а просто стоит на месте до исполнения или отмены.

HookPartFilledDelay: задержка отмены бай ордера после частичного заполнения (миллисек.) Если 0, то задержки нет, частично заполненный ордер сразу отменяется (как в муншотах).
HookSellLevel: заменяет SellPrice. Задается в процентах от глубины детекта.
Например, SellPrice = 75% означает, что нужно продавать в верхней четверти прострела. SellPrice = 100% означает продажу в верхней точке, из которой начался прострел.
HookSellFixed: считать селл всегда как (HookSellLevel * глубина) процентов, вне зависимости от цены покупки.
HookReplaceDelay: задержка в секундах перед перестановкой buy ордера после падения цены.
HookRaiseWait: задержка в секундах перед перестановкой buy ордера после роста цены в секундах.
HookRepeatAfterSell: ставить повторный ордер после исполнения селла.
HookRepeatIfProfit: %, повторять, если продажа закрылась с таким или большим профитом.
BuyOrderReduce: (параметр переехал из стратегии Spead и имеет такое же назначение). Задает интервал (в мс), на котором считать средний объем торгов. Стратегия выставит ордер размером не больше, чем средний объем. По умолчанию 100 (мс).
Как считается объем: суммируется объем всех сделок (покупки и продажи) на интервале HookTimeFrame и делится на BuyOrderReduce.
Например, если HookTimeFrame= 5 сек (5000 мс), BuyOrderReduce = 100мс, объем за 5 сек был 10 000$, то средний объем за 100мс будет равен 10000/5000мс*100мс=200$.
В этом случае стратегия поставит ордер не более 200$
Иначе говоря, смотрим какой же был средний объем за 100 (мс)/ 10мс/ 5мс, это и есть наш максимальный ордер какой выставит стратегия.
Если BuyOrderReduce=0, то параметр отключен.