Trendvolgende strategieën

Financieel traden in Python

Chelsea Yang

Data Science Instructor

Twee typen handelsstrategieën

Trendvolgend

  • Ga uit van voortzetting van de prijstrend
  • Gebruik trendindicatoren zoals voortschrijdende gemiddelden, ADX, enz. om signalen te bouwen

Mean reversion

  • Ga uit van terugkeer van de prijs naar het gemiddelde
  • Gebruik indicatoren zoals RSI, Bollinger Bands, enz. om signalen te bouwen
Financieel traden in Python

MA-crossoverstrategie

The trend is your friend.

 

  • Twee EMA-crossovers:
    • Longsignaal: de korte EMA kruist boven de lange EMA
    • Shortsignaal: de korte EMA kruist onder de lange EMA
Financieel traden in Python

Bereken de indicatoren

import talib
# Bereken de indicatoren
EMA_short = talib.EMA(price_data['Close'],
                      timeperiod=10).to_frame()
EMA_long = talib.EMA(price_data['Close'], 
                     timeperiod=40).to_frame()
Financieel traden in Python

Construeer het signaal

# Maak de signalen-DataFrame
signal = EMA_long.copy()
signal[EMA_long.isnull()] = 0

# Construeer het signaal signal[EMA_short > EMA_long] = 1
signal[EMA_short < EMA_long] = -1
Financieel traden in Python

Plot het signaal

# Plot het signaal, de prijs en de MAs
combined_df = bt.merge(signal, price_data, EMA_short, EMA_long)
combined_df.columns = ['Signal', 'Price', 'EMA_short', 'EMA_long']

combined_df.plot(secondary_y=['Signal'])

Plot van EMA-crossover signaal

Financieel traden in Python

Definieer de strategie met het signaal

# Definieer de strategie
bt_strategy = bt.Strategy('EMA_crossover',

[bt.algos.WeighTarget(signal), bt.algos.Rebalance()])
Financieel traden in Python

Backtest de signaalstrategie

# Maak de backtest en voer uit
bt_backtest = bt.Backtest(bt_strategy, price_data)
bt_result = bt.run(bt_backtest)
Financieel traden in Python

Plot backtestresultaten

# Plot het backtestresultaat
bt_result.plot(title='Backtest result')

Backtestresultaat MA-crossover

Financieel traden in Python

Laten we oefenen!

Financieel traden in Python

Preparing Video For Download...