1. Learn
  2. /
  3. Courses
  4. /
  5. Machine Learning pentru finanțe în Python

Connected

Exercise

Creează caracteristici cu media mobilă și RSI

Vrem să adăugăm date istorice modelelor noastre de învățare automată pentru a face predicții mai bune, dar includerea unui număr mare de pași de timp istorici poate fi complicată. În schimb, putem condensa informațiile din punctele anterioare într-un singur pas de timp cu ajutorul indicatorilor.

Media mobilă este unul dintre cei mai simpli indicatori – reprezintă media punctelor de date anterioare. Aceasta este funcția talib.SMA() din biblioteca TAlib.

Un alt indicator tehnic des utilizat este indicele de forță relativă (RSI). Acesta este definit astfel:

\(RSI = 100 - \frac{100} {1 + RS}\)

\(RS = \frac{\text{average gain over } n \text{ periods}} {\text{average loss over } n \text{ periods}}\)

Numărul de perioade n se setează în talib.RSI() prin argumentul timeperiod.

O perioadă frecvent folosită pentru RSI este 14, așa că vom folosi această valoare ca una dintre setările din calculele noastre.

Instructions

100 XP
  • Creează o listă de nume de caracteristici (începe cu o listă care conține doar '5d_close_pct').
  • Folosește perioade de timp de 14, 30, 50 și 200 pentru a calcula medii mobile cu talib.SMA() pe baza prețurilor de închidere ajustate (lng_df['Adj_Close']).
  • Normalizează mediile mobile în raport cu prețul de închidere ajustat, împărțind la Adj_Close.
  • În interiorul buclei, calculează RSI cu talib.RSI() din Adj_Close, folosind n pentru perioada de timp.