如何解决多个股票历史测试的问题
需求:
因为股票有数千个,故不能像期货那样一个策略对多个品种独立测试。
我们需要,1,测试股票符合交易系统时的表现,2,在数千只股票中最符合系统的N只股票的综合表现。(因为资金是有限的最多只能做多少,同时为了适应市况在不同的条件下设定不同的仓位。)
那我们如何进行含参数的历史测试呢?
第一条路:最近推出的股票池,没法历史测试。
第二条路:利用自定义数据,实现上述需求中的第二条(横向排名找出最符合系统的N只股票来交易)
其他的路:目前没想到,还请各位朋友提示。
目前第二条路中,存在一个难题:我能根据指定的指标参数(给股票评分排名用的),建立一份自定义数据,完成一次多只股票的历史测试,但是这个评分排名所用的参数要变动时,只能手动再建立一份不同参数的自定义数据,也就是说没法自动的对含有自定义数据(参数在自定义数据所引用的指标内)的系统进行优化测试。
现在的自定义数据是手动一个一个的建立,然后刷新保存。
我想有2个解决方案:
能自动的批量建立自定义数据,然后批量刷新保存备用。(跟参数优化时的设定一样,不过得到的是批量的自定义数据)
虽然运算量大,但是可以让电脑慢慢干,干完保存备用。这个还不算很自动化。
然后在历史优化测试时,SELFDATAS这样的函数,可以让它带上参数,参数与批量的自定义数据对应上。测试中利用已经保存的自定义数据来计算即可。
第二个方案,你们做软件复杂但是客户简便。直接让自定义数据和交易系统带上同样的参数,(增加自定义数据的函数,在交易系统中直接用一个函数建立和计算指定参数下的自定义数据,该函数直接将数据一下算完备用)要用到自定义数据的结果时,直接调用刚刚计算好的。计算慢,但是人工测试省力。同时便于盘中实时计算实时交易。
等于实现了一个全自动的对一篮子股票的1符合系统打分2给好股票排名3能优化测试4能自动交易的功能。
客服可以根据我的需求,构建一个简单的系统,他能代替股票池的功能并且能历史优化测试能交易。
假定有这样一个股票交易系统,实现一下看看。
1 范围:指定15只股票作为标的,
2 打分:最近3天累计涨幅最多的,
排名:5只股票买入,(这里要用到自定义数据,其中3 5就是参数)
买入后20天离场。
http://www.weistock.com/bbs/dispbbs.asp?boardid=10&Id=137635
这里的有方案,可以解决楼主的需求