Реверсионная стратегия является очень простой стратегией торговли трендом. Ее основная идея заключается в том, чтобы пойти на длинный курс, когда краткосрочная скользящая средняя падает ниже долгосрочной скользящей средней на определенный процент, и закрыть позицию, когда краткосрочная скользящая средняя пересекает длинную скользящую среднюю. Стратегия сначала рассчитывает краткосрочную и долгосрочную скользящую среднюю, а затем генерирует торговые сигналы на основе отношения между двумя скользящими средними.
Стратегия в основном опирается на два скользящих средних, один краткосрочный и один долгосрочный. Краткосрочный скользящий средний параметр smallMAPeriod, а долгосрочный скользящий средний параметр bigMAPeriod. Стратегия сначала рассчитывает эти два скользящих средних, а затем сравнивает размерные отношения между ними.
Когда краткосрочная скользящая средняя падает сверху и прорывается через определенный процент (установленный параметром percentBelowToBuy) долгосрочной скользящей средней, генерируется сигнал покупки для длинного хода.
Когда краткосрочная скользящая средняя в определенной степени ниже долгосрочной скользящей средней, это означает, что актив может быть недооценен и должен иметь шанс вернуться к средней, поэтому долгосрочная сделка может получить отскочную прибыль.
Стратегия реверсии среднего значения челюстей имеет следующие преимущества:
Стратегия может достичь хороших результатов с помощью простой оптимизации параметров.
Стратегия реверсии "Челюстей" также сопряжена с некоторыми рисками:
Для смягчения рисков могут быть использованы следующие методы:
Стратегия реверсии среднего значения челюстей может быть оптимизирована из следующих аспектов:
Стратегия реверсии среднего значения челюстей отражает средние возможности реверсии после того, как краткосрочные цены отклоняются от долгосрочных тенденций путем сравнения краткосрочных и долгосрочных скользящих средних. Стратегия имеет простую логику, которую легко понять и реализовать. Благодаря оптимизации параметров она может достичь хороших результатов.
/*backtest start: 2023-02-20 00:00:00 end: 2024-02-26 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // @version=4 // // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // // @author Sunil Halai // // This very simple strategy is an implementation of PJ Sutherlands' Jaws Mean reversion algorithm. It simply buys when a small moving average period (e.g. 2) is below // a longer moving average period (e.g. 5) by a certain percentage, and closes when the small period average crosses over the longer moving average. // // If you are going to use this, you may wish to apply this to a range of investment assets, as the amount signals is low. Alternatively you may wish to tweak the settings to provide more // signals. strategy("Jaws Mean Reversion [Strategy]", overlay = true) //Strategy inputs source = input(title = "Source", defval = close) smallMAPeriod = input(title = "Small Moving Average", defval = 2) bigMAPeriod = input(title = "Big Moving Average", defval = 5) percentBelowToBuy = input(title = "Percent below to buy %", defval = 3) //Strategy calculation smallMA = sma(source, smallMAPeriod) bigMA = sma(source, bigMAPeriod) buyMA = ((100 - percentBelowToBuy) / 100) * sma(source, bigMAPeriod)[0] if(crossunder(smallMA, buyMA)) strategy.entry("BUY", strategy.long) if(crossover(smallMA, bigMA)) strategy.close("BUY")