Индикатор силы тренда: ADX

Финансовый трейдинг на Python

Chelsea Yang

Data Science Instructor

Что такое ADX?

  • Расшифровывается как «Average Directional Movement Index»
  • Разработан Дж. Уэллсом Уайлдером
    • «New Concepts in Technical Systems» (1987)

Книга Уэллса Уайлдера

  • Измеряет силу тренда
    • Колеблется от 0 до 100
    • ADX <= 25: тренд отсутствует
    • ADX > 25: рынок в тренде
    • ADX > 50: сильный тренд
Финансовый трейдинг на Python

Как рассчитывается ADX?

  • Вычисляется на основе сглаженных средних разности +DI и -DI
    • +DI (Plus Directional Index): определяет наличие восходящего тренда
    • -DI (Minus Directional Index): определяет наличие нисходящего тренда

 

  • Входные данные для расчёта:
    • максимальная, минимальная и цена закрытия каждого периода
Финансовый трейдинг на Python

Реализация ADX на Python

# 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
Финансовый трейдинг на Python

Визуализация 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()

График цены сверху и график ADX снизу

Финансовый трейдинг на Python

Давайте потренируемся!

Финансовый трейдинг на Python

Preparing Video For Download...