
Эта стратегия является торговой стратегией, основанной на пересечении 30-дневных и 200-дневных скользящих средних. Она работает на 1-минутном графике золота XAUUSD для захвата краткосрочных ценовых тенденций.
Эта стратегия использует в качестве торгового сигнала 30-дневную и 200-дневную пересекающиеся средние. Когда 30-дневная пересекает 200-дневную перемещающуюся среднюю выше 30-дневных перемещающихся средних, делают больше; когда 30-дневная пересекает 200-дневную перемещающуюся среднюю ниже 30-дневных перемещающихся средних, делают пустоту. Кроме того, при появлении обратного сигнала, ликвидируют текущую позицию, а затем открывают позицию в направлении нового сигнала.
Эта стратегия сочетает в себе преимущества отслеживания трендов и пересечения средних линий. 30-дневная средняя линия более быстро реагирует на изменения цен, а 200-дневная средняя линия обладает более сильной фильтрацией трендов. Их пересечение дает четкий сигнал для входа и выхода на рынок.
Основные риски, связанные с этой стратегией:
Риски можно снизить следующими способами:
Эта стратегия может быть оптимизирована в следующих аспектах:
Эта стратегия работает гладко, основная логика торговли ясна и проста. Она использует двухлинейный перекрест, чтобы генерировать торговый сигнал и блокировать прибыль путем обратного открытия позиции. Этот способ торговли позволяет избежать значительных потерь во время ценового урегулирования.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Estrategia de Cruce de Medias Móviles", overlay=true)
// Medias móviles
ma30 = ta.sma(close, 30)
ma60 = ta.sma(close, 60)
ma200 = ta.sma(close, 200)
// Cruce de medias móviles
crossoverUp = ta.crossover(ma30, ma200)
crossoverDown = ta.crossunder(ma30, ma200)
// Señales de compra y venta
longCondition = crossoverUp
shortCondition = crossoverDown
// Ejecución de órdenes
if (longCondition)
strategy.entry("Buy", strategy.long)
strategy.exit("Cover", "Buy", stop=close - 40.000, limit=close + 40.000)
if (shortCondition)
strategy.entry("Sell", strategy.short)
strategy.exit("Cover", "Sell", stop=close + 40.000, limit=close - 40.000)
// Plot de las medias móviles
plot(ma30, color=color.blue, title="MA 30")
plot(ma60, color=color.orange, title="MA 60")
plot(ma200, color=color.green, title="MA 200")
// Condiciones para cerrar la posición contraria
if (strategy.position_size > 0)
if (crossoverDown)
strategy.close("Buy")
if (strategy.position_size < 0)
if (crossoverUp)
strategy.close("Sell")