def test_something(self): db = MySQLUtils('root', '1988', 'test', 'stock') data = db.get_array('sh600741', begin='2015-01-01', end='2016-01-01') ohlc = OHLCVD(data) ohlc.add_macd() ohlc.add_ma(10) ohlc.add_rsi_feature() ohlc.add_raise_day(5) ohlc.add_raise_day(10) ohlc.add_recent_down_v_turn() data = ohlc.get_array() print data.shape[1]
# coding=utf-8 __author__ = 'squall' import numpy as np from backtest.utils.mysql import MySQLUtils from data.ohlc import OHLCVD if __name__ == '__main__': db = MySQLUtils('root', '1988', 'stock', 'stock') result = db.get_array('sh600741', begin='2007-10-10', end='2015-12-12') ohlc = OHLCVD(data=result) print result print ohlc.get_dataframe() ohlc.add_macd() ohlc.add_ma(60) print ohlc.get_array().shape print ohlc.get_dataframe() vol_values = ohlc.data_frame.volume.values kernel = np.ones(20)*0.05 result = np.convolve(kernel, vol_values, mode='valid') # plt.plot(result) # plt.show()
# coding=utf-8 __author__ = 'squall' import talib import numpy as np import pandas as pd from backtest.utils.mysql import MySQLUtils db = MySQLUtils('root', '1988', 'test', 'stock') data = db.get_array(id='sh600741', begin='2010-01-01', end='2016-12-31') print data print np.exp(data[:, 5].astype(np.float64)) # note that all ndarrays must be the same length! inputs = { 'open': data[:, 1].astype(np.float64), 'high': data[:, 2].astype(np.float64), 'low': data[:, 3].astype(np.float64), 'close': data[:, 4].astype(np.float64), 'volume': np.exp(data[:, 5].astype(np.float64)) } macd_result = talib.abstract.MACD(inputs) macd_result = np.vstack(macd_result) macd_data_frame = pd.DataFrame(data=macd_result.T, index=data[:, 0]) x = macd_result.T y = x[:, 1] - x[:, 0] print y*2 # macd_data_frame.plot()