
이 전략의 핵심 아이디어는 매월의 첫 번째 거래일에 상장하고, 마지막 거래일에 평점이다. 이것은 매우 간단한 전략으로 주로 교육 시연을 위해 사용된다.
이 전략은 먼저 매월의 첫 번째 거래일 (월요일) 을 포지션 개시 신호로, 마지막 거래일 (금요일) 을 포지션 평소 신호로 정의한다.
포지션 개설시, 개설된 경우만 더 많은 설정을 하면, 직접 더 많은 것을 한다. 공백이 허용된 경우, 동시에 포지션을 개설하면 더 많은 공백을 한다.
평정시에는 공백을 허용하면 전체 포지션을 평정하고, 과잉만 하면 과잉 포지션을 평정한다.
위험을 통제하기 위해, 전략은 또한 간단한 중지 손실 설정을 추가했다. 가격이 중지 가격에 도달 할 때, 강제 평정 위치 중지했다.
일반적으로 이 전략은 매우 간단하고 직설적이며, 가장 기본적인 월간 거래 전략에 속하며, 교육용 시연에 적합하다. 실제 적용에서는 입출장 신호, 중단 방법 등에 대한 필요에 따라 최적화할 수 있다.
이 아이디어는 간단하고 직설적이어서 초보자에게는 아주 적합합니다.
월간 지분을 사용하고, 연산 빈도가 낮아 안정성을 추구하는 투자자에게 적합하다.
다양한 스타일의 거래자를 만족시킬 수 있는 옵션이 있습니다.
손해 차단 기능이 추가되어 개인 주식 위험을 어느 정도 조절할 수 있습니다.
출전시간은 고정되어 있고, 시장상황에 따라 조정할 수 없으며, 경매가 이루어질 가능성이 있다.
수량적 판단을 포함하지 않고 맹목적 추적의 위험이 있습니다.
단일 주식 정지는 쉽게 뚫릴 수 있으며, Tail Risk을 효과적으로 제어할 수 없습니다.
포지션은 고정되어 있으며 시장 상황에 따라 포지션을 조정할 수 없습니다.
거래의 불확실성은 전략에 따라 완전히 실행되지 않을 수 있습니다.
간단한 중지 방식은 작은 중지로 이어질 수 있으며, 변동성 중지와 같은 동적 중지 방식이 적용되어야 한다.
시장 상태를 판단하는 수량 지표를 도입할 수 있으며, 포지션 개시 속도를 동적으로 조정할 수 있다.
기준 지수와 비교하여, 주식들의 상대적으로 강한 선택에 대해 판단한다.
시장의 변동률과 같은 위험 지표에 따라 역동적으로 포지션을 조정한다.
동적 정지, 또는 여러 계층의 정지.
알고리즘 트레이딩 모듈에 가입하여 트레이딩 신호를 거래할 수 있도록 합니다.
자금 관리 전략을 최적화하고, 다양한 시장 환경에 따라 주식 지수 선물 포지션을 조정한다.
기계학습을 통해 주식 품질을 판단하고 입주 주식을 선택합니다.
이 전략은 매우 기초적인 월 초에 매입하여 월말에 입점하는 전략으로, 논리는 간단하고 이해하기 쉽다. 초보자 학습에 적합하다. 그러나 실제 적용 시에는 진출 시간, 손실 차단 방법, 포지션 관리 등에 대한 최적화가 필요합니다.
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// © Je_Buurman September 1st 2020
//@version=4
strategy("Buurmans Tutorial", overlay=true, initial_capital=1000, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_value=0.2)
// Some initial inputs, these are needed in case the strategy returns an error of "too many trades, > 3000"
Year = input(defval = 2020, title = "From Year", minval = 2010) //
Month = input(defval = 1, title = "From Month", minval = 1, maxval=12)
LongOnly=input(true, title="Only go Long?")
// Phase I - the initial "Strategy" - buy Monday, sell Friday
longCondition = dayofweek==dayofweek.monday and (time > timestamp(Year, Month, 01, 00, 00, 00))
shortCondition = dayofweek==dayofweek.friday and (time > timestamp(Year, Month, 01, 23, 59, 59))
// Phase II - some rudimentary "risk-management" e.g. stoploss
Use_stoploss=input(false, title="Use stoploss ?")
stoploss_input=input(150, title="Stoploss in $")
Stoploss = Use_stoploss ? strategy.position_size>0 ? iff(strategy.position_size>0,strategy.position_avg_price - stoploss_input, na) : strategy.position_size<0 ? iff(strategy.position_size<0,strategy.position_avg_price + stoploss_input, na) : na : na
plot(Use_stoploss and strategy.position_size!=0 ? Stoploss : na, color=iff(Stoploss!=na,color.silver, color.red),style=plot.style_linebr)
// Phase III - make it more profitable by trying to filter conditions
// only buy on odd Mondays ? only buy on full moon Mondays ? something else entirely ?
// The actual trades, going Long, close Long, going Short and Stoploss
if (longCondition)
strategy.entry("Buy on Monday", strategy.long)
if (shortCondition and LongOnly==false)
strategy.entry("Short on Friday", strategy.short)
if (shortCondition and LongOnly)
strategy.close("Buy on Monday", comment="Sell on Friday")
if (low < Stoploss)
strategy.close("Buy on Monday", comment="Long Stopped on Someday")
if (high > Stoploss)
strategy.close("Short on Friday", comment="Short Stopped on Someday")