
Эта стратегия основана на простых движущихся средних (SMA) с несколькими различными временными периодами, чтобы определить тенденцию рынка и отправить сигнал о продаже. Стратегия использует четыре SMA на 20-й, 50-й, 100-й и 200-й линиях. Когда вы проходите длительную SMA на краткосрочной SMA, делайте больше; когда вы проходите длительную SMA на краткосрочной SMA, делайте пустое.
Основная логика этой стратегии заключается в следующем:
Вычислите SMA с несколькими различными временными периодами, включая 20-дневную, 50-дневную, 100-дневную и 200-дневную линии.
Судить о пересечении краткосрочных SMA ((20-дневная линия) с долгосрочными SMA ((50-дневная линия, 100-дневная линия, 200-дневная линия)
Когда 20-я линия пересекает 50-ю линию, делайте больше; когда 20-я линия пересекает 50-ю линию, делайте больше; когда 20-я линия пересекает 50-ю линию, делайте больше.
В то же время, 50-дневная, 100-дневная и 200-дневная линии должны удовлетворять логике суждения о большом тренде, то есть более длинный период SMA должен находиться над более коротким периодом SMA.
Приоритет входного сигнала: 20-я линия и 50-я линия> 20-я линия и 100-я линия> 20-я линия и 200-я линия.
Выходный сигнал пересекает 50-ю линию на 20-й день.
Эта стратегия основывается на пересечении линии SMA для определения направления тренда. В бычьих рынках, долгосрочные SMA на краткосрочных SMA являются сигналом золотого форка, означающим, что цена может войти в тренд; в медвежьих рынках, долгосрочные SMA на краткосрочных SMA являются сигналом мертвого форка, означающим, что цена может войти в корректировку. Кроме того, более длительный период SMA выше, чем более короткий SMA является основанием для определения большого тренда.
Эта стратегия имеет следующие преимущества:
Стратегическая концепция проста и понятна, легко понятна и реализуема.
Используя SMA, движущиеся средние эффективнее, чем EMA, фильтруют рыночный шум и идентифицируют тенденции.
Использование в сочетании с многопакетным временным циклом SMA может повысить надежность сигнала.
Приоритет входных сигналов должен быть разумным, чтобы избежать преждевременного входа.
Можно настроить период и цвет SMA, оптимизировать стратегию.
Используется в различных временных циклах и подходит для различных стилей торговли.
Система перекрестного SMA очень точно и эффективно судит о тенденциях на рынке.
Также существуют следующие риски:
В шоковых ситуациях часто встречаются перекрестные сигналы SMA, которые могут создавать большое количество ошибочных сигналов.
Фиксированные циклы SMA не могут адаптироваться к изменениям рынка, поэтому следует оптимизировать параметры SMA в сочетании с тенденциями и волатильностью.
Если только пересечение SMA не позволяет определить время входа в рынок, следует использовать другие показатели, такие как MACD, для дополнительного определения.
SMA является задержанным по своей природе, поэтому следует заранее оптимизировать время входа или использовать лимитные листы.
Стратегия требует высоких требований к управлению капиталом и строгого соблюдения логики стоп-лосса.
Следует учитывать влияние затрат на транзакции на стратегическую прибыльность.
Эта стратегия может быть оптимизирована в следующих аспектах:
Оптимизация параметров циклов SMA, различные параметры циклов применимы к различным рыночным условиям, могут быть объединены с динамической оптимизацией ATR.
Добавление комбинаций других индикаторов, таких как MACD, RSI и т. Д., чтобы помочь фильтровать время входа в игру.
Добавление логики определения трендов, такой как ADX, чтобы избежать ошибочной торговли на рынке волатильности.
Оптимизация метода остановки, может быть остановка по ATR или отслеживание остановки.
Оптимизация управления позициями, динамическая корректировка каждой позиции в зависимости от размера капитала.
Тестирование эффективности параметров разных сортов, адаптация цикла SMA в зависимости от характеристик.
Вместе с многочисленными временными рамками, они обеспечивают согласованность макроциклических тенденций.
В целом, стратегия SMA Gold Fork Dead Fork определяет направление тренда с помощью простой системы перекрестных перемещающихся средних, имеет высокую надежность и подходит для большинства трейдеров. Однако в ней есть некоторые проблемы с отставанием и ошибочными сигналами. Мы должны продолжать совершенствовать эту стратегию с точки зрения оптимизации времени входа в рынок, методов остановки потерь, управления позициями и т. Д., Чтобы она могла иметь стабильную прибыльность в разных рыночных условиях.
/*backtest
start: 2023-10-14 00:00:00
end: 2023-11-13 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © xyzdesign1989
//@version=5
strategy("SMA crossover buy/sell [SCSM_Algo]", overlay=true, margin_long=3000, margin_short=3000)
BuyCond = ta.crossover(ta.sma(close, 20), ta.sma(close, 50)) and ta.sma(close, 20) > ta.sma(close, 50) and ta.sma(close, 50) > ta.sma(close, 100) and ta.sma(close, 100) > ta.sma(close, 200) or (ta.crossover(ta.sma(close, 20), ta.sma(close, 100)) and ta.sma(close, 20) > ta.sma(close, 50))
if (BuyCond)
strategy.entry("SCSM 🤲 Buy", strategy.long)
SellCond = ta.crossunder(ta.sma(close, 20), ta.sma(close, 50))
if (SellCond)
strategy.entry("الحمد للہ،Sell", strategy.short)
ma(source, length, type) =>
type == "SMA" ? ta.sma(source, length) :
type == "EMA" ? ta.ema(source, length) :
type == "SMMA (RMA)" ? ta.rma(source, length) :
type == "WMA" ? ta.wma(source, length) :
type == "VWMA" ? ta.vwma(source, length) :
na
show_ma1 = input(true , "MA №1", inline="MA #1")
ma1_type = input.string("SMA" , "" , inline="MA #1", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma1_source = input(close , "" , inline="MA #1")
ma1_length = input.int(20 , "" , inline="MA #1", minval=1)
ma1_color = input(#0929f6, "" , inline="MA #1")
ma1 = ma(ma1_source, ma1_length, ma1_type)
plot(show_ma1 ? ma1 : na, color = ma1_color, title="MA №1")
show_ma2 = input(true , "MA №2", inline="MA #2")
ma2_type = input.string("SMA" , "" , inline="MA #2", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma2_source = input(close , "" , inline="MA #2")
ma2_length = input.int(50 , "" , inline="MA #2", minval=1)
ma2_color = input(#00fb04, "" , inline="MA #2")
ma2 = ma(ma2_source, ma2_length, ma2_type)
plot(show_ma2 ? ma2 : na, color = ma2_color, title="MA №2")
show_ma3 = input(true , "MA №3", inline="MA #3")
ma3_type = input.string("SMA" , "" , inline="MA #3", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma3_source = input(close , "" , inline="MA #3")
ma3_length = input.int(100 , "" , inline="MA #3", minval=1)
ma3_color = input(#131313, "" , inline="MA #3")
ma3 = ma(ma3_source, ma3_length, ma3_type)
plot(show_ma3 ? ma3 : na, color = ma3_color, title="MA №3")
show_ma4 = input(true , "MA №4", inline="MA #4")
ma4_type = input.string("SMA" , "" , inline="MA #4", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma4_source = input(close , "" , inline="MA #4")
ma4_length = input.int(200 , "" , inline="MA #4", minval=1)
ma4_color = input(#f60c0c, "" , inline="MA #4")
ma4 = ma(ma4_source, ma4_length, ma4_type)
plot(show_ma4 ? ma4 : na, color = ma4_color, title="MA №4")