이 전략은 동적 시간 프레임 높은 낮은 브레이크오웃을 사용하여 거래 신호를 생성합니다. 이 접근 방식은 다른 시장 추세와 변동성에 적응하여 전략의 적응력과 유연성을 향상시킬 수 있습니다.
이 전략의 핵심은 가격 트렌드를 결정하기 위해 다른 시간 프레임의 높고 낮은 점을 사용하는 것입니다. 먼저 사용자가 선택한 시간 프레임에 대응하는 가장 높은 가격, 가장 낮은 가격 및 폐쇄 가격 데이터를 얻습니다. 그런 다음, 현재 시간 프레임의 가장 높은 가격이 이전 시간 프레임의 종료 가격과 일정 수의 포인트보다 크는지 비교하여 구매 신호를 결정합니다. 마찬가지로, 현재 시간 프레임의 가장 낮은 가격이 이전 시간 프레임의 종료 가격과 마이너스 일정 수의 포인트보다 작는지 비교하여 판매 신호를 결정합니다. 일단 구매 또는 판매 신호가 나타나면 전략은 그에 따라 포지션을 열거나 닫을 것입니다. 또한, 전략은 차트에 구매 및 판매 신호를 표시하고 전략의 직관적인 성과를 평가하기 위해 전략의 주식 곡선을 그릴 것입니다.
동적 시간 프레임 높은 낮은 브레이크 아웃 전략은 다른 시간 프레임에서 높은 점과 낮은 점의 가격 브레이크 아웃을 기반으로 거래 신호를 생성합니다. 전략 논리는 명확하고 적응 가능하며 구현 및 최적화하기가 쉽습니다. 그러나 실제 응용에서 지속적으로 최적화 및 개선되어야하는 매개 변수 민감성, 과잉 적합성 및 시장 위험과 같은 문제도 있습니다. 매개 변수를 동적으로 조정하고, 위험 관리를 도입하고, 다른 지표와 결합하고, 코드 효율성을 최적화함으로써 전략의 견고성과 수익성을 더욱 향상시킬 수 있으며, 양적 거래에 효과적인 도구와 아이디어를 제공합니다.
/*backtest start: 2023-05-28 00:00:00 end: 2024-06-02 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(" NIFTY 65-15 ", overlay=true) // Define input options for point settings and timeframe points = input.int(60, title="Point Threshold", minval=1, step=1) timeframe = input.timeframe("60", title="Timeframe", options=["1", "3", "5", "15", "30", "60", "240", "D", "W", "M"]) // Calculate high and low of the selected timeframe high_timeframe = request.security(syminfo.tickerid, timeframe, high) low_timeframe = request.security(syminfo.tickerid, timeframe, low) close_timeframe = request.security(syminfo.tickerid, timeframe, close) // Define conditions for Buy and Sell buyCondition = high_timeframe > (close_timeframe[1] + points) sellCondition = low_timeframe < (close_timeframe[1] - points) // Entry and exit rules if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.entry("Sell", strategy.short) // Close the positions based on the conditions if (sellCondition) strategy.close("Buy") if (buyCondition) strategy.close("Sell") // Plot Buy and Sell signals on the chart plotshape(series=buyCondition, title="Buy Entry", color=color.green, style=shape.triangleup, location=location.belowbar) plotshape(series=sellCondition, title="Sell Entry", color=color.red, style=shape.triangledown, location=location.abovebar) // Plot the equity curve of the strategy plot(strategy.equity, title="Equity", color=color.blue, linewidth=2)