
랜덤 전략은 랜덤 지수의 K 라인이 D 라인을 가로질러 있고, 포지션 지수가 마이너스 지수보다 높을 때 구매 신호를 생성하는 전략이다. 이 전략은 랜덤 지수와 지수의 장점을 결합하여 주가가 반전될 때 시장에 진입할 기회를 잡기 위해 고안되었다.
이 전략은 크게 두 가지 지표에 기반을 두고 있습니다.
무작위 지수 ((Stochastic Oscillator): 이 지표는 당일 종결 가격과 일정 주기 내의 최고 가격과 최저 가격을 비교하여 시장이 과매매되거나 과매매되는지를 반영한다. 무작위 지수의 빠른 선 K 위에 느린 선 D를 통과하면 구매 신호로 간주한다.
포텍스 인디케이터 (Vortex Indicator): 이 지표는 일정 주기 동안 변동한 최대와 최소의 값을 비교하여 시장의 포텍스 상승 또는 하락 운동을 반영한다. 포텍스 인디케이스가 마이너스 인디케이스보다 높을 때 주가가 상승하는 동력이 하락하는 동력보다 강하다는 것을 의미하며 구매할 수 있다.
이 전략의 구매 신호는 무작위 인덱스의 빠른 라인 K 위에 느린 라인 D를 통과하여 주가가 과매도 지역에서 상승한 것을 나타냅니다. 그리고 긍정 인덱스가 부정적인 인덱스보다 높다는 것은 주가가 상승하는 동력이 강하다는 것을 의미합니다. 따라서 두 신호를 결합하면 최종 구매 판단이 발생합니다.
이 전략은 랜덤 지수와 지수의 두 지표의 장점을 결합하여 다음과 같은 특징을 가지고 있다:
주가가 반전할 기회를 잡을 수 있고, 임의의 K 선과 D 선을 통해 주가가 반전하는 것을 반영할 수 있습니다.
“이런 식으로, 우리는 ‘’ 지수와 ‘’ 지수를 비교할 수 있습니다.
매개 변수 (Parameter) 는 지표의 매개 변수를 조정하고, 전략을 최적화할 수 있습니다.
시각화 된 구매 신호는 직관적인 판단을 유도합니다.
무작위 지수와 지수 내장 메커니즘, 많은 역사 데이터 지원이 필요하지 않고, 실 디스크에 적합하다.
이 전략에는 몇 가지 위험도 있습니다.
구매 신호는 잘못된 신호로 인해 손실을 완전히 피할 수 없습니다.
지표 변수를 잘못 설정하면 전략의 효과에 영향을 미칠 수 있습니다.
지표가 작동하지 않을 확률이 높기 때문에 주가가 급격하게 변동할 수 있습니다.
시장의 흐름을 판단할 수 없어서, 곰 시장에서도 구매 신호가 발생한다.
이러한 위험은 지표 매개 변수를 조정하고, 스톱로드를 설정하고, 대시장 추세를 고려하는 등의 방법으로 최대한 피할 수 있습니다. 그러나 어떤 양적 전략도 손실을 완전히 피할 수 없으며, 어느 정도의 위험을 감수해야 합니다.
이 전략은 다음과 같은 방향으로 최적화될 수 있습니다.
다른 기술적인 지표와 함께 추세를 파악하고, 상위 지점을 피하십시오.
한 번에 최대 손실을 통제하기 위해 손해 방지 장치를 추가합니다.
다양한 지표의 조합을 테스트하여 최적의 변수를 찾습니다.
포지션 개시 조건을 늘려서 잘못된 통보의 가능성을 줄일 수 있도록 한다.
거래 비용을 고려하고 최소 수익 목표를 설정하십시오.
이러한 최적화는 전략의 안정성을 높이고, 손실을 줄이고, 전략의 가치를 극대화할 수 있다.
무작위 전략은 주가 반전 신호와 상승 동력 신호를 종합적으로 고려하는 전형적인 반전 전략이다. 그것은 상가 지역에서 반전 상승의 기회를 제때 포착하고, 동시에 지수를 사용하여 상승 동력을 판단하여 가짜 돌파를 피한다. 이 전략은 유연하고 실장에 쉽게, 위험을 제어할 수 있으며, 선택 가능한 양적 전략이다. 그러나 어떤 전략도 시장 위험을 완전히 피할 수 없으며, 신중하게 접근해야하며, 전략의 더 큰 가치를 탐구하기 위해 가능한 최적화 공간을 고려해야합니다.
/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Stochastic and Vortex Strategy", overlay=true)
// Stochastic Oscillator settings
kPeriod = input(14, title="K Period")
dPeriod = input(3, title="D Period")
slowing = input(3, title="Slowing")
k = sma(stoch(close, high, low, kPeriod), slowing)
d = sma(k, dPeriod)
// Vortex Indicator settings
lengthVI = input(14, title="Vortex Length")
tr = max(max(high - low, abs(high - close[1])), abs(low - close[1]))
vmPlus = abs(high - low[1])
vmMinus = abs(low - high[1])
viPlus = sum(vmPlus, lengthVI) / sum(tr, lengthVI)
viMinus = sum(vmMinus, lengthVI) / sum(tr, lengthVI)
// Buy condition
buyCondition = crossover(k, d) and viPlus > viMinus
if (buyCondition)
strategy.entry("Buy", strategy.long)
plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plot(k, title="%K", color=color.blue)
plot(d, title="%D", color=color.orange)
hline(80, "Overbought", color=color.red)
hline(20, "Oversold", color=color.green)
plot(viPlus, title="VI+", color=color.purple)
plot(viMinus, title="VI-", color=color.red)