簡體   English   中英

快速傅立葉變換算法及技術分析

[英]Fast Fourier Transform Algorithm and Technical Analysis

我的迷你實踐項目要求我做以下事情:

  1. 下載股票價格。
  2. 降低股價。
  3. 平穩的去趨勢股票價格。
  4. 應用FFT算法。

迷你實踐項目的Python代碼如下所示:

#Python code: Download the Daily Stock Prices from Yahoo Finance 
from matplotlib.finance 
import quotes_historical_yahoo 
from pylab
import * import numpy as np import
scipy.signal as sc import
matplotlib.pyplot as plt 
import pandas as pd
ticker='AAPL' begdate=(2013,12,6) enddate=(2015,12,20)
data = quotes_historical_yahoo(ticker, begdate, enddate,asobject=True, adjusted=True)
aapl=data.aclose[1:]
np.count_nonzero(aapl)
plt.plot(aapl)
plt.title(‘Apple stock price movement’)

#Python code: Detrend stock prices
detrend=sc.detrend(aapl)
plt.plot(detrend)
plt.title(‘Apple stock detrended prices’) 

#Python code: Smooth Detrended Apple Stock Prices 
w=np.blackman(20) 

#we selected 20 the parameter of the blackman window function 
y=np.convolve(w/w.sum(),detrend,mode='same')
plt.plot(y) plt.title(‘Blackman window function for detrended Apple stock
price’) 

#Python code: Apply FFT Algorithm 
fft=abs(rfft(y)) plt.plot(fft)
plt.title(‘FFT Algorithm applied to Apple stock price’)

當我鍵入>>> fft時,結果應為:array([31.29635197,2706.46455209,1093.11797192,904.02261366,582.27538238,282.87694269,244.95336969,501.27771573,247.04690328,554.24978967,115.67400179,270.142459.0.174.51970 87.25308608、87.15654977、39.34619432])

我不斷收到代碼錯誤:來自matplotlib.finance是無效的語法。 我該如何解決?

from matplotlib.finance 
import quotes_historical_yahoo 

應該在同一行上,如下所示:

from matplotlib.finance import quotes_historical_yahoo

或者,您可以折行:

from matplotlib.finance \
import quotes_historical_yahoo 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM