PyalgoTrade 技術組合計算(四)

能夠各類技術能夠組合起來。它們被建模爲DataSeries。例如,在收盤價之上得到RSI以上的計算SMA,是很是簡單的:python

from pyalgotrade import strategy from pyalgotrade.barfeed import yahoofeed from pyalgotrade.technical import ma from pyalgotrade.technical import rsi class MyStrategy(strategy.BacktestingStrategy): def __init__(self, feed, instrument): super(MyStrategy, self).__init__(feed) self.__rsi = rsi.RSI(feed[instrument].getCloseDataSeries(), 14) self.__sma = ma.SMA(self.__rsi, 15) self.__instrument = instrument def onBars(self, bars): bar = bars[self.__instrument] self.info("%s %s %s" % (bar.getClose(), self.__rsi[-1], self.__sma[-1])) # Load the yahoo feed from the CSV file feed = yahoofeed.Feed() feed.addBarsFromCSV("orcl", "orcl-2000.csv") # Evaluate the strategy with the feed's bars. myStrategy = MyStrategy(feed, "orcl") myStrategy.run()

若是您運行腳本,您應該在屏幕上看到一系列值:lua

  • 前14個RSI值爲空。這是由於咱們須要至少15個值才能得到RSI值。
  • 前28個SMA值爲空。這是由於前14個RSI值爲空,第15個是SMA濾波器接收到的第一個非空值。只有當咱們有15個不是空值時,咱們才能計算出SMA(15)。
    2000-01-03 00:00:00 strategy [INFO] 118.12 None None
    2000-01-04 00:00:00 strategy [INFO] 107.69 None None
    2000-01-05 00:00:00 strategy [INFO] 102.0 None None
    2000-01-06 00:00:00 strategy [INFO] 96.0 None None
    2000-01-07 00:00:00 strategy [INFO] 103.37 None None
    2000-01-10 00:00:00 strategy [INFO] 115.75 None None
    2000-01-11 00:00:00 strategy [INFO] 112.37 None None
    2000-01-12 00:00:00 strategy [INFO] 105.62 None None
    2000-01-13 00:00:00 strategy [INFO] 105.06 None None
    2000-01-14 00:00:00 strategy [INFO] 106.81 None None
    2000-01-18 00:00:00 strategy [INFO] 111.25 None None
    2000-01-19 00:00:00 strategy [INFO] 57.13 None None
    2000-01-20 00:00:00 strategy [INFO] 59.25 None None
    2000-01-21 00:00:00 strategy [INFO] 59.69 None None
    2000-01-24 00:00:00 strategy [INFO] 54.19 23.5673530141 None
    2000-01-25 00:00:00 strategy [INFO] 56.44 25.0687519877 None
    2000-01-26 00:00:00 strategy [INFO] 55.06 24.7476577095 None
    2000-01-27 00:00:00 strategy [INFO] 51.81 23.9690136517 None
    2000-01-28 00:00:00 strategy [INFO] 47.38 22.9108539956 None
    2000-01-31 00:00:00 strategy [INFO] 49.95 24.980004823 None
    2000-02-01 00:00:00 strategy [INFO] 54.0 28.2484181864 None
    2000-02-02 00:00:00 strategy [INFO] 54.31 28.505177315 None
    2000-02-03 00:00:00 strategy [INFO] 56.69 30.5596770599 None
    2000-02-04 00:00:00 strategy [INFO] 57.81 31.5564353751 None
    2000-02-07 00:00:00 strategy [INFO] 59.94 33.5111056589 None
    2000-02-08 00:00:00 strategy [INFO] 59.56 33.3282358994 None
    2000-02-09 00:00:00 strategy [INFO] 59.94 33.7177605915 None
    2000-02-10 00:00:00 strategy [INFO] 62.31 36.2205441255 None
    2000-02-11 00:00:00 strategy [INFO] 59.69 34.6623493641 29.0368892505
    2000-02-14 00:00:00 strategy [INFO] 62.19 37.4284445543 29.9609620198
    .
    .
    .
    2000-12-27 00:00:00 strategy [INFO] 30.69 51.3196802735 49.8506368511
    2000-12-28 00:00:00 strategy [INFO] 31.06 52.1646203455 49.997518354
    2000-12-29 00:00:00 strategy [INFO] 29.06 47.3776678335 50.0790646925



做者:readilen
連接:http://www.jianshu.com/p/c07582a79036
來源:簡書
著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。spa

相關文章
相關標籤/搜索