Conduza uma otimização de estratégia
Você tem uma estratégia de sinal baseada em SMA para operar ações. Porém, você não tem certeza qual período de lookback usar para calcular a SMA que otimize o desempenho da estratégia. Você planeja executar vários backtests com diferentes parâmetros de entrada. Além disso, você quer a capacidade de avaliar a estratégia operando diferentes ações ou com base em diferentes períodos históricos.
O pacote bt já foi importado para você. Também, os dados históricos de preços da ação da Tesla foram pré-carregados em price_data.
Este exercício faz parte do curso
Negociação Financeira em Python
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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)