KST 지표 수익 전략


생성 날짜: 2023-11-27 11:37:49 마지막으로 수정됨: 2023-11-27 11:37:49
복사: 0 클릭수: 748
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

KST 지표 수익 전략

개요

KST 지표 수익 전략은 SPY 30분 주기에서 적용되는 주식 선택 전략이다. 이 전략은 KST 지표의 다공간 교차를 사용하여 입점과 출퇴근 시간을 판단한다.

전략 원칙

이 전략은 주로 KST 지표에 기초한다. KST 지표는 다음과 같은 부분들로 구성된다:

  1. ROC 길이는 각각 11, 15, 20, 33의 4개의 다른 길이의 ROC 곡선이다.
  2. 위의 ROC 곡선에 각각 적용된 길이는 9, 14, 8, 15이다.
  3. 평형된 후의 4개의 ROC 곡선에 가중분모를 더하여, 각각 무게는 1, 2, 3, 4이다.
  4. 최종 KST 곡선을 다시 적용하면 길이가 9인 SMA 구한 Signal 곡선 .

KST 곡선과 Signal 곡선의 황금 포크 데드 포크를 기준으로 매매점을 판단한다:

  • KST 상에서 Signal을 통해 구매 신호
  • KST 아래 Signal를 통해 신호를 팔아

우위 분석

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. KST 지표 통합을 사용하여 다른 시간 주기의 가격 변화를 고려하여 전략이 더 안정적이고 신뢰할 수 있습니다.

  2. KST 지표는 ROC 곡선에 무게중심 평균을 적용하여 더 긴 주기의 가격 변화를 주도적으로 활용하여 시장 추세를 포착하는 데 도움이됩니다.

  3. SPY에 적용된 이 고 유동성 지표는 좋은 실디 효과로 꼽힌다.

위험 분석

이 전략에는 몇 가지 위험도 있습니다.

  1. KST 지표는 MA 지표와 마찬가지로, 흔들림 상황에서 가짜 신호를 생성하기 쉽다. 파라미터를 조정하여 최적화 할 수 있다.

  2. 엔트리 및 엑시트는 전적으로 지표에 의존하며 주식 기본 사항과 대시장 분석이 결합되지 않아 중대한 사건이 발생하면 큰 손실이 발생할 수 있습니다.

  3. 선택 주식은 SPY의 한 품목에 한정되어 있으며, 선택 주식의 범위를 확장함으로써 단일 품목의 위험을 분산시킬 수 있습니다.

최적화 방향

이 전략은 다음과 같은 방향으로 최적화될 수 있습니다.

  1. KST 지표 변수를 최적화하여 최적의 변수 조합을 찾습니다.

  2. 변동률 지표와 함께 흔들림 상황을 피하는 가짜 신호.

  3. 단편적 손실을 제어하는 Stop Loss 전략이 증가한다.

  4. 주식 풀을 확장하고, 적절한 조건을 충족하는 주식을 적절하게 포함하고, 전략의 안정성을 높인다.

요약하다

이 전략은 KST 지표를 이용하여 주식의 짧은 라인 트렌드를 판단하여 SPY에서 좋은 효과를 얻었다. 우리는 매개 변수 최적화, 풍력 제어 조치와 같은 방법을 통해 전략 안정성과 실전 효과를 향상시킬 수 있다. 또한 선택 주식의 범위를 확장하여 전략을 더 보편적으로 만들 수 있다.

전략 소스 코드
/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("KST Strategy", shorttitle="KST", overlay=true)

roclen1 = input.int(11, minval=1, title="ROC Length #1")
roclen2 = input.int(15, minval=1, title="ROC Length #2")
roclen3 = input.int(20, minval=1, title="ROC Length #3")
roclen4 = input.int(33, minval=1, title="ROC Length #4")
smalen1 = input.int(9, minval=1, title="SMA Length #1")
smalen2 = input.int(14, minval=1, title="SMA Length #2")
smalen3 = input.int(8, minval=1, title="SMA Length #3")
smalen4 = input.int(15, minval=1, title="SMA Length #4")
siglen = input.int(9, minval=1, title="Signal Line Length")

smaroc(roclen, smalen) =>
    ta.sma(ta.roc(close, roclen), smalen)

kst = smaroc(roclen1, smalen1) + 2 * smaroc(roclen2, smalen2) + 3 * smaroc(roclen3, smalen3) + 4 * smaroc(roclen4, smalen4)
sig = ta.sma(kst, siglen)

// Plot the KST and Signal Line
plot(kst, color=#009688, title="KST")
plot(sig, color=#F44336, title="Signal")
hline(0, title="Zero", color=#787B86)

// Strategy logic
longCondition = ta.crossover(kst, sig)
shortCondition = ta.crossunder(kst, sig)

strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)