V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
raquant
V2EX  ›  投资

[量化小实验] 双线 RSI 择时策略

  •  
  •   raquant · 2017-04-27 10:36:23 +08:00 · 3840 次点击
    这是一个创建于 2760 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简介:

    RSI (Relative Strength Index) 强弱指标是由威尔斯.威尔德( Welles Wilder)最早应用于期货买卖,后来人们发现在众多的图表技术分析中,强弱指标的理论和实践极其适合于股票市场的短线投资,于是被用于股票升跌的测量和分析中。其原理简单来说是以数字计算的方法求出买卖双方的力量对比,譬如有 100 个人面对一件商品,如果 50 个人以上要买,竞相抬价,商品价格必涨。相反,如果 50 个人以上争着卖出,价格自然下跌。 强弱指标理论认为,任何市价的大涨或大跌,均在 0-100 之间变动,根据常态分配,认为 RSI 值多在 30-70 之间变动,通常 80 甚至 90 时被认为市场已到达超买状态,至此市场价格自然会回落调整。当价格低跌至 30 以下即被认为是超卖状态,市价将出现反弹回升。

    策略思想

    短期 RSI 值在 20 以下,由下向上交叉长期 RSI 值时为买入信号; 短期 RSI 值在 80 以上,由上向下交叉长期 RSI 值时为卖出信号。

    实验过程( java 语言实现)

    注:选择 10 日作为短线 RSI 参数,50 日作为长线 RSI 参数。

    一、初始化策略和自定义变量

    在镭矿,可以方便的使用各种因子直接获得对应的指标,要使用两个 RSI 指标,我们需要首先初始化两个 RSI Factor,把要计算的天数作为参数传入。同时需要创建两个列表用来存储买进和卖出的股票集。

    接下来,在 init 函数中添加股票到股票池,我们加入所有股票。

    二、首先对股票池中的每一支股票,判断其 10 日收盘价的 RSI 值(即 RSI1 值)是否小于 20,同时判断是否大于该股的 50 日收盘价的 RSI 值(即 RSI2 值),如果这两个条件同时满足,则将该股票加入买单列表;如果其 10 日收盘价的 RSI 值(即 RSI1 值)大于 80,同时判断是否小于该股 50 日收盘价的 RSI 值( RSI2 值),满足则将该股加入卖单列表

    三、对于在卖单列表中的股票,判断现在是否持仓,如果持仓则执行清仓操作;,同时判断大盘昨日收盘价与其 5 日之前的收盘价之比是否小于 0.98,如果小于,则清空买单列表

    四、下一步判断买单列表中的股票数目是否大于 10,如果大于 10,则取出其中前 10 位的股票用于更新买单列表对于买单列表中的股票,如果当前已经持仓则继续持仓,如果没有持仓则进行建仓

    做完这四步,来看看回溯结果吧。

    如果你真的是程序员,进入镭矿 raquant量化平台亲自试试吧。

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2839 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 09:33 · PVG 17:33 · LAX 01:33 · JFK 04:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.