시작하기무료로 시작하기

전략 최적화 수행하기

주식 거래를 위한 SMA 기반 신호 전략이 있습니다. 하지만 전략 성과를 최적화하려면 SMA를 계산할 때 어떤 조회 기간(lookback period)을 써야 할지 확신이 서지 않네요. 서로 다른 입력 매개변수로 여러 번 백테스트를 실행할 계획이에요. 또한, 서로 다른 종목을 거래하거나 다른 과거 기간을 기준으로 전략을 평가할 수 있으면 좋겠습니다.

bt 패키지는 이미 임포트되어 있습니다. 또한 Tesla 주식의 과거 가격 데이터가 price_data에 미리 로드되어 있어요.

이 연습은 강의의 일부입니다

Python으로 배우는 금융 트레이딩

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

def signal_strategy(price_data, period, name):
    # Calculate SMA
    sma = price_data.____
    # Define the signal-based Strategy
    bt_strategy = bt.Strategy(name, 
                              [____,
                               bt.algos.WeighEqually(),
                               bt.algos.Rebalance()])
    # Return the backtest
    return ____(bt_strategy, price_data)
코드 편집 및 실행