
간단한 이동 평균 (SMA) 거래는 가격과 SMA200의 관계를 기반으로 한 거래 전략으로, 시장의 평균 회귀 특성을 이용하는 것이 핵심 아이디어이며, 가격이 SMA200의 특정 비율을 넘어갈 때 더 많이 입문하고 가격이 SMA200 또는 그 이상의 거래 라인으로 돌아올 때 퇴출한다. 이 전략은 주로 대형 주식을 대상으로 해상 시간 프레임워크를 사용하여 14%의 거래 대역폭을 설정하고, 서로 다른 시장 환경과 거래자의 위험 선호도에 맞게 두 가지 다른 퇴출 메커니즘을 제공합니다.
이 전략의 핵심 원칙은 가격과 SMA200 (SMA 200) 의 관계에 기반합니다:
입학 조건:
탈퇴 조건(두 가지 선택 가능한 모드):
기술 매개 변수:
탐지 시간 설정:
전략의 실행 논리는 명확하다: 부어형 입력 파라미터를 통해 어떤 탈퇴 전략을 사용할지 결정하고, 두 가지 모드가 동시에 활성화되지 않도록 보장하고, 가격이 진입 및 탈퇴 조건을 충족하는지 여부에 따라 적절한 거래 신호를 발송한다.
명확한 입출국 지점전략은 객관적이고 명확한 진입과 퇴출 신호를 제공하며, 주관적인 판단으로 인한 감정적 방해를 줄여줍니다.
평균값 회귀 원리: 시장의 평균값 회귀 특성을 최대한 활용하여, 특히 대형 주식과 같은 비교적 안정적인 자산에 적합하다.
유연한 탈퇴두 가지 탈퇴 전략 옵션을 제공하여 거래자가 자신의 위험 선호와 시장 환경에 따라 조정할 수 있습니다.
매개 변수 최적화 공간: 전략은 입수 및 퇴출 비율 수준을 조정할 수 있으며, 다른 시장 환경에 적응성을 제공합니다.
회수 날짜를 사용자 정의: 특정 시장 단계에 대한 전략적 평가를 돕기 위해 사용자들이 재검토 기간을 지정할 수 있게 한다.
가격 극한에 기반한 신호 발동: 가격의 최고점과 최저점을 종점 가격보다 신호 트리거 조건으로 사용하여, 하루의 변동을 더 잘 포착할 수 있다.
가짜 침입 위험: 가격이 일시적으로 설정된 경계를 넘어서 다시 내려가 잘못된 신호를 유발할 수 있다. 해결책은 확인 지표를 추가하거나 시간 필터를 설정하는 것이다.
시장 추세 변동 위험: 강한 일방향 트렌드 시장에서 평균값 회귀 전략은 좋지 않을 수 있다. 사용하기 전에 현재 시장 환경을 평가하거나 트렌드 필터를 추가하는 것이 좋습니다.
매개변수 민감도:SMA 주기 및 포괄 라인 비율의 선택은 전략 성능에 큰 영향을 미칩니다. 다양한 파라미터 조합을 재검토하여 최적의 설정을 찾아야합니다.
다중 머리 전략만: 현재 전략은 단지 다중 논리를 수행하고 있으며, 지속적인 하락 시장에서 기회를 놓칠 수 있습니다. 다양한 시장 환경에 대응하기 위해 하락 논리를 추가하는 것을 고려할 수 있습니다.
시간적 제한: 전략이 명확하게 지정된 것은 일선 차트에서만 적용되며, 다른 시간 프레임에서의 성능은 검증되지 않았다.
위험 관리 장치의 부재: 코드에는 손해 중지 설정이 포함되어 있지 않으며, 극단적 인 경우 큰 손실을 초래할 수 있습니다. 적절한 손해 중지 장치를 추가하는 것이 좋습니다.
더 많은 코스피 전략: 현재 전략은 단지 여러 부분만을 구현하고 있으며, 더 많은 시장 환경에 적응할 수 있도록 전략에 허위 논리를 추가할 수 있습니다. 실행 방법은 허위 입출구를 촉발하는 역조건을 추가하는 것입니다.
손해배상 장치에 가입ATR 또는 고정 비율을 기반으로 하는 스톱로스 설정을 추가할 수 있습니다.
다른 기술 지표와 결합: 추가적인 필터 조건, RSI, MACD 또는 거래량 지표와 같은 것을 추가하여 신호 품질을 향상시킬 수 있습니다. 예를 들어, 가격이 입시 조건을 충족하는 동시에 RSI가 과매도 영역에 있다고 요구합니다.
동적 조정 변수: 시장의 변동성에 따라 포트망선 폭을 조정할 수 있으며, 변동성이 증가할 때 포트망선 범위를 확장하고, 변동성이 감소할 때 포트망선 범위를 좁힐 수 있다.
포지션 관리: 전체 포지션이 아닌 일부 포지션의 청산 기능을 구현하여 자금 사용과 위험 관리를 최적화한다.
시간 필터 추가시장시간에 기반한 필터링 조건을 추가하여 불리한 거래 시간에 신호를 보내지 않도록 할 수 있습니다.
포지션 사이징: 변동성이나 위험 지표에 따라 거래 당 포지션 크기를 동적으로 조정합니다. 고정 포지션이 아닙니다.
다주기 분석: 더 길고 더 짧은 시간 사이클 분석과 결합하여 입국 및 퇴출 시점의 정확도를 높인다.
간단한 이동 평균 포커드 라인 다이내믹 트레이딩 전략은 기술 분석에 기반한 양적 트레이딩 전략으로, 가격과 장기 이동 평균 사이의 관계를 활용하여 거래 기회를 포착한다. 이 전략은 특히 큰 주식의 일일 라인 트레이딩에 적합하며, 가격이 SMA200에서 크게 이탈했을 때 입문하고, 가격이 특정 수준으로 돌아왔거나 넘어갔을 때 퇴출하여 수익을 얻는다.
전략의 주요 장점은 규칙이 명확하고, 신호가 객관적이며, 서로 다른 거래 스타일에 맞게 두 가지의 다른 탈퇴 메커니즘을 제공한다는 것입니다. 그러나, 전략은 또한 파라미터의 민감도가 높고, 스톱 로즈 메커니즘이 없으며, 다중 거래에만 제한되는 등의 제한이 있습니다.
공백 논리, 손실 메커니즘, 추가 기술 지표 필터링 및 동적 파라미터 조정과 같은 최적화를 추가함으로써이 전략은 다양한 시장 환경에서 더 안정적인 성능을 발휘할 것으로 예상됩니다. 양자 거래자에게는 개인 요구와 시장 특성에 따라 추가적으로 사용자 정의 및 개선 할 수있는 좋은 기본 프레임 워크를 제공합니다.
/*backtest
start: 2024-06-11 00:00:00
end: 2025-06-11 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © prasathalye
//@version=6
strategy("Upper or Lower Band Env Entry and Exit", overlay=true, fill_orders_on_standard_ohlc = true)
//Get User Input for LONG or SHORT ENVELOPE STRATEGY
//@version=6
//indicator("Input in an expression`", "", true)
//bool input_strategy = input.string("SHORT", "Strategy", options = ["SHORT", "LONG"]) == "SHORT"
//plot(plotDisplayInput ? close : na)
//string StrategySelection= input.text_area("SELECT EITHER LONG or SHORT")
bool strategyShortEnvelope=input.bool(true,"Exit at SMA200 STRATEGY")
bool strategyLongEnvelope=input.bool(false,"Exit at Upper Band STRATEGY")
if strategyShortEnvelope== true
strategyLongEnvelope == false
if strategyLongEnvelope == true
strategyShortEnvelope==false
//Basis = 20 Period SMA
//Upper Envelope = 20 Period SMA + (20 Period SMA x 0.1)
//Lower Envelope = 20 Period SMA - (20 Period SMA x 0.1)
// strategy for the exit at UPPER band of Envelope
if strategyLongEnvelope == true
conditionForBuy_1= low <= ta.sma(close,200) * 0.86
conditionForBuy_2= low <= ta.sma(close,200) * 0.9
conditionForSell_1= high >= ta.sma(close,200) * 1.1
conditionForSell_2 = high >= ta.sma(close,200) * 1.14
if conditionForBuy_1 or conditionForBuy_2
strategy.entry("My Long Entry Id", strategy.long)
if conditionForSell_1 or conditionForSell_2
strategy.close_all("Target Price Reached")
// strategy for the exit at LOWER band of Envelope
if strategyShortEnvelope == true
conditionForBuy_1= low <= ta.sma(close,200) * 0.85
conditionForBuy_2= low <= ta.sma(close,200) * 0.9
conditionForSell_1= high >= ta.sma(close,200) * 1.03
conditionForSell_2 = high >= ta.sma(close,200)
if conditionForBuy_1 or conditionForBuy_2
strategy.entry("My Long Entry Id", strategy.long)
if conditionForSell_1 or conditionForSell_2
strategy.close_all("Target Price Reached")