동력 및 거래량 전략

저자:차오장, 날짜: 2023-12-19 15:37:16
태그:

img

전반적인 설명

이 전략은 주식 동력 지표와 거래량 지표에 기초하여 구매 및 판매 결정을 내린다. 주식 가격의 상승 동력이 가속화되고 거래량이 급증할 때 구매하고 하락 동력이 가속화되고 거래량이 급증할 때 판매한다. 이 전략은 시장 무리 행동으로 인한 단기 가격 동력을 포착한다.

전략 원칙

주식 가격 변화 트렌드의 강도와 기간이 모멘텀을 결정합니다. 이 전략은 가격 모멘텀을 판단하기 위해 전날의 변화와 가까운 변화를 계산합니다. 가격이 연속적으로 상승할 때 모멘텀은 긍정적이며 가격이 연속적으로 떨어지면 음입니다. 이 전략은 거래량 지표를 결합합니다. 거래량이 20 일 이동 평균 (취약점 이상) 보다 현저하게 높을 때만 구매 및 판매 신호가 활성화됩니다.

특히, 구매 조건은 매출량이 20일 평균의 2배 이상인 0 이상의 모멘텀 지표의 크로스오버이다. 판매 조건은 그 반대이다. 구매 후, 수익 목표가 진입 가격의 0.8배로 설정되고, 스톱 로스는 0.5배이다. 판매 후 수익 목표와 스톱 로스는 이에 따라 역전된다.

장점

가장 큰 장점은 단기 시장 추세와 무리 행동을 포착하는 것입니다. 주식 가격이 지속적으로 상승하거나 하락할 때 많은 소매 및 기관 투자자가 거래에 더 강한 가격 동력을 따르게됩니다. 이것은 자기 강화 단기 가격 추세를 만듭니다. 전략은 그러한 시장 심리학을 활용하여 과도한 수익을 창출합니다. 수동 인덱스 추적 전략과 비교하면이 전략의 예상 과잉 수익이 더 높습니다.

위험성

첫째, 단기 가격 변동은 예측할 수 없습니다. 갑작스러운 사건으로 인해 급격한 반전이 발생할 위험이 있습니다. 이는 스톱 손실에도 불구하고 완전히 피할 수 없습니다. 둘째, 거래 양의 데이터 품질은 다양합니다. 조작의 가능성을 완전히 배제 할 수 없습니다. 이는 무역 신호를 왜곡합니다. 셋째, 간단한 가격 및 볼륨 분석은 단기 추세를 정확하게 제어 할 수 없습니다. 주요 구조 시장 변화는 전략 성과에 영향을 줄 수 있습니다.

강화

더 많은 데이터 소스는 전략의 효율성을 향상시키기 위해 통합 될 수 있습니다. 예를 들어, 소셜 미디어 플랫폼에서 관련 주식 토론의 양은 미래의 가격 움직임을 나타낼 수 있습니다. 이 데이터는 추가 입출 신호를 제공할 수 있습니다. P / E 비율 및 P / B 비율과 같은 기본 지표는 또한 가격 변화 지속 가능성을 확인하고 잘못된 거래를 줄이는 데 도움이 될 수 있습니다.

결론

이 전략은 가격 동력과 거래량에서 통합된 변화를 포착하여 단기 트렌드와 양떼 행동을 판단합니다. 이러한 빅 데이터 및 행동 금융 기반 양적 전략은 전통적인 전략보다 기대 수익을 더 높일 수 있습니다. 그러나 위험은 인정 및 예방이 필요합니다. 입력 매개 변수는 거래 결과를 지속적으로 개선하기 위해 지속적인 최적화를 필요로합니다.


/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Momentum and Volume Bot', overlay=true)

// Define strategy parameters
profit_target_percent = input(0.8, title='Profit Target (%)')
stop_loss_percent = input(0.5, title='Stop Loss (%)')
volume_threshold = input(2, title='Volume Threshold')

// Calculate momentum
momentum = close - close[1]

// Calculate average volume
avg_volume = ta.sma(volume, 20)

// Buy condition
buy_condition = ta.crossover(momentum, 0) and volume > avg_volume * volume_threshold

// Sell condition
sell_condition = ta.crossunder(momentum, 0) and volume > avg_volume * volume_threshold

// Strategy logic
strategy.entry('Buy', strategy.long, when=buy_condition)
strategy.entry('Sell', strategy.short, when=sell_condition)

// Set profit target and stop loss
strategy.exit('Take Profit/Stop Loss', from_entry='Buy', profit=close * profit_target_percent / 100, loss=close * stop_loss_percent / 100)
strategy.exit('Take Profit/Stop Loss', from_entry='Sell', profit=close * profit_target_percent / 100, loss=close * stop_loss_percent / 100)

// Plotting
plotshape(series=buy_condition, title='Buy Signal', color=color.new(color.green, 0), style=shape.triangleup, size=size.small)
plotshape(series=sell_condition, title='Sell Signal', color=color.new(color.red, 0), style=shape.triangledown, size=size.small)



더 많은