量化交易
本质上是一种基于统计与概率的计算机运算策略。通过对历史大量的数据进行不同组合的量化策略运算,寻找投资方向和确定买卖时机。随着大环境的改变,策略必然需要变动调整,但我们不变的目标便是执着地寻找出适合当下获利概率最大所对应的投资策略。
技术分析
相对强弱指数(Relative Strength Index,RSI)
1. 原理
RSI从本质上来讲,是根据一段时间内的价格涨跌情况来反映市场的多空程度。其通过计算,得出一个0-100之间的数值代表当天的RSI,一般来说超过50为多头行情,而小于50可认为是空头行情。实际运用中,投资者更多的会根据RSI是否捅破某个其所认为的阈值或者其曲率变化来判断是否出现了超卖超买市场,从而实施自己的投资行为。
2. 数据预处理:
这里我们需要处理股票的历史数据,所以可以先下载到本地,方法可以参考前面所写的博文获取全球各大证券交易所的全部股票交易信息。为了更方便地使用数据,我们可以先设置几个函数,如下:
import numpy as np
import math
import random
import json
#从本地读取历史数据,下面读取的是已经下载到本地的CSV文件。
def get_stock_hist(num):
s_his=np.genfromtxt('C:/Users/Haipeng/Desktop/python/Korea/Korea_{:03d}.csv'.format(num), delimiter=',')
s_hi=s_his[1:][:]
days=s_hi.shape[0]
this_stock = []
for i in range(1,days,1):
this_day = [i]
for k in range(1,7):
this_day.append(s_hi[i][k])
this_stock.append(this_day)
print 'Maximum date is ',len(this_stock)
return this_stock
#均值
def get_ma(D, N):
p_used=np.zeros(N);
for i in range(1,N+1,1):
p_used[i-1]=stock_hist[(D-1)-(i-1)][4]
ma=np.mean(p_used)
return ma