Wskaźnik siły trendu: ADX

Financial Trading w Pythonie

Chelsea Yang

Data Science Instructor

Czym jest ADX?

  • Skrót od "Average Directional Movement Index"
  • Opracowany przez J. Wellesa Wildera
    • "New Concepts in Technical Systems" (1987)

Książka Wellesa Wildera

  • Mierzy siłę trendu
    • Oscyluje między 0 a 100
    • ADX <= 25: brak trendu
    • ADX > 25: rynek w trendzie
    • ADX > 50: silny trend
Financial Trading w Pythonie

Jak obliczany jest ADX?

  • Wyprowadzany ze wygładzonych średnich różnicy między +DI a -DI
    • +DI (Plus Directional Index): mierzy siłę trendu wzrostowego
    • -DI (Minus Directional Index): mierzy siłę trendu spadkowego

 

  • Dane wejściowe do obliczeń:
    • ceny otwarcia, minimum i zamknięcia każdego okresu
Financial Trading w Pythonie

Implementacja ADX w Pythonie

# Calculate ADX
stock_data['ADX'] = talib.ADX(stock_data['High'], stock_data['Low'], stock_data['Close'],
                              timeperiod=14)

# Print the last five rows print(stock_data.tail())
             Open   High    Low  Close   ADX
Date                                        
2020-11-24 540.40 559.99 526.20 555.38 21.16
2020-11-25 550.06 574.00 545.37 574.00 23.92
2020-11-27 581.16 598.78 578.45 585.76 26.82
2020-11-30 602.21 607.80 554.51 567.60 28.25
2020-12-01 597.59 597.85 572.05 584.76 29.58
Financial Trading w Pythonie

Wykres ADX

import matplotlib.pyplot as plt

# Create subplots
fig, (ax1, ax2) = plt.subplots(2)

# Plot ADX with the price ax1.set_ylabel('Price') ax1.plot(stock_data['Close']) ax2.set_ylabel('ADX') ax2.plot(stock_data['ADX']) ax1.set_title('Price and ADX') plt.show()

Wykres ceny na górze i wykres ADX na dole

Financial Trading w Pythonie

Czas na ćwiczenia!

Financial Trading w Pythonie

Preparing Video For Download...