
이 전략은 가우스 채널 (Gaussian Channel) 과 임의의 상대적으로 약한 지표 (Stochastic RSI) 를 결합한 기술 분석 거래 시스템입니다. 가우스 채널은 지수 이동 평균 (EMA) 과 표준 차이의 곱셈을 통해 상하 채널을 형성하여 가격 변동에 대한 역동적 지원과 저항 지점을 제공합니다.
전략의 핵심 논리는 다음과 같은 핵심 요소에 기초합니다.
이 전략은 고스 통로와 무작위 RSI를 결합하여 트렌드 추적 및 역전 포착 능력을 갖춘 거래 시스템을 구축한다. 전략 설계는 여러 기술적 분석 차원을 고려하고 있으며, 이론적 기반과 실용성을 갖추고 있다. 합리적인 매개 변수 최적화 및 위험 관리를 통해 이 전략은 다양한 시장 환경에서 안정적인 성능을 얻을 것으로 예상된다. 그러나 사용자는 전략의 장점과 제한을 충분히 알고 실제 거래 환경에 따라 타당하게 조정해야합니다.
/*backtest
start: 2024-02-18 00:00:00
end: 2025-02-16 08:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © fgkkaraca
//@version=5
strategy("Alienseeker GC and RSI Strategy", overlay=true, commission_type=strategy.commission.percent, commission_value=0.1, slippage=0, default_qty_type=strategy.percent_of_equity, default_qty_value=200, process_orders_on_close=true)
// Gaussian Channel Inputs
lengthGC = input.int(20, "Gaussian Channel Length", minval=1)
multiplier = input.float(2.0, "Standard Deviation Multiplier", minval=0.1)
// Calculate Gaussian Channel
basis = ta.ema(close, lengthGC)
deviation = multiplier * ta.stdev(close, lengthGC)
upperChannel = basis + deviation
lowerChannel = basis - deviation
// Plot Gaussian Channel
plot(basis, "Basis", color=color.blue)
plot(upperChannel, "Upper Channel", color=color.green)
plot(lowerChannel, "Lower Channel", color=color.red)
// Stochastic RSI Inputs
rsiLength = input.int(14, "RSI Length", minval=1)
stochLength = input.int(14, "Stochastic Length", minval=1)
smoothK = input.int(3, "Smooth K", minval=1)
smoothD = input.int(3, "Smooth D", minval=1)
// Calculate RSI
rsi = ta.rsi(close, rsiLength)
// Calculate Stochastic RSI
lowestRSI = ta.lowest(rsi, stochLength)
highestRSI = ta.highest(rsi, stochLength)
stochRSI = (rsi - lowestRSI) / (highestRSI - lowestRSI) * 100
k = ta.sma(stochRSI, smoothK)
d = ta.sma(k, smoothD)
// Trading Conditions
stochUp = k > d
priceAboveUpper = ta.crossover(close, upperChannel)
priceBelowUpper = ta.crossunder(close, lowerChannel)
// Date Range Filter
startDate = input(timestamp("2018-01-01"), "Start Date")
endDate = input(timestamp("2069-01-01"), "End Date")
timeInRange = true
// Strategy Execution
if timeInRange
strategy.entry("Long", strategy.long, when=priceBelowUpper and stochUp)
strategy.close("Long", when=priceAboveUpper )