如何建立一个股票量化交易模型并仿真? ?

论坛 期权论坛 期权     
匿名的论坛用户   2020-12-27 06:40   10767   10
想请大神们回答下具体是如何操作的,大数据的统计?数学模型的建立?盈利模式是怎么确定的?用何种编程语言实现?
分享到 :
0 人收藏

10 个回复

正序浏览
11#
热心的小回应  16级独孤 | 2020-12-27 06:41:05 发帖IP地址来自
      一个简单的想法编写成简单的程序,这明显不能称作为量化模型,但这却是任何一个量化模型的来源,即人的想法。完整的量化模型应当包括:策略模型、风险模型、交易成本模型、投资组合构建模型、执行模型,如下图:

那么,让我们好好解剖一下这整个系统:
策略模型:策略模型可以说是整个量化模型最核心的部分,决定了整个量化模型的盈利能力。策略模型五花八门,归类划分为:理论驱动型和数据驱动型。数据驱动型的策略通过对数据的分析而揭开市场的面纱,说白了就是靠数据解释一切市场行为。理论驱动型策略通过理论去预测未来的市场行为,而其中的理论就是人们通过对市场的观察,然后给出符合经济学原理的解释。
理论驱动型的策略可以划分为两大类:基于价格数据的交易策略和基于基本面数据的交易策略。基于价格数据的交易策略有:趋势跟随型(动量策略)、均值回复策略、技术情绪策略。基于基本面数据的交易策略有:价值型、成长型、品质型。如下图:

1.趋势跟随型:标志性策略就是双均线策略,投资者认为在一定时间内市场通常是朝着同一方向变化的。说白了,就是看涨做涨。
2.均值回复型:标志性策略就是统计套利策略,投资者认为在一定时间内市场并非朝着同一方向变化的。说白了,就是超涨了卖,超跌了买。
3.技术情绪型:标志性策略就是情绪指标策略,投资者认为通过某些价格、成交量可以暗示对投资者对后续行情的情绪,随后进行相应操作。其中比较有意思是通过比较期权的认购量和认沽量,来判断投资者对后续行情的情绪。
4.价值型:价值型策略的基本理念是:收益率越高,价格越低。通俗的讲,买入被低估的证券,卖出被高估的证券。
5.成长型:成长型策略往往投资成长性公司,成长性公司是指较长一段时间内,具有持续挖掘未利用资源能力,不同程度地呈现整体扩张态势,未来发展预期良好的企业。通俗的讲,买入正在快速发展以及具有良好发展前景的公司股票。
6.品质型:品质型策略选择公司的标志就不一样,有杠杆比率、收入来源的多样性、管理水平、欺诈风险等等。
上述策略模型在实施过程中必须考虑选股范围、选股标准、投资期限、交易信号 、仓位控制、止盈止损。一个策略模型应当包含的因素都不可少,不然会影响到整个策略模型,进而导致整个量化模型失败。
风险模型:风险模型对于一个量化模型来说,是不可缺少的,它能提高量化模型盈利的质量和稳定性。风险模型分为:内部风险和外部风险。内部风险有:数据错误,个股风险,市场风险等等。外部风险有:网络风险,技术风险,物理风险等。
1.数据错误:模型进行回测或者实盘交易的过程中,数据本身如果是错误的,那么交易最终的结果也是没有意义的,如果是实盘交易,那么后果也是不堪设想的。
2.市场风险:量化模型在实盘交易过程中,由于整个策略程序并不能完美的预测出未来市场的任何一个变化,当宽客发现市场环境出现巨大变化,导致与量化策略所适应的的环境不一致时,就需要进行量化策略的暂停。
3.个股风险:与市场风险对应的是个股风险,基于价格数据驱动的策略尤其需要堤防个股风险,当公司的基本面短时间内发生巨大变化时,但技术层面并未及时更新,导致量化模型买入垃圾股票。
4.外部风险:外部风险指的是量化模型在实施过程中的现实风险,比如计算机下单时,由于网络中断,计算机硬件损坏,打雷地震等,导致交易单并未传送到交易所,从而产生损失。
设置风险模型的意义就在于,当量化模型遇到上述风险时,宽客能够及时采取措施,进行人工干预或者预备计算机启动,尽可能的减少损失。
交易成本模型:策略模型在于盈利,风险模型在于规避损失,交易成本模型则在于控制成本,使得整个量化模型的盈利最大化。交易成本模型的基本理念是:策略模型在运行过程中发生的成本较为精确的计算出来,从交易成本可以判断出策略模型运行频率。
交易成本一般有:佣金与费用、滑点、市场冲击成本。通常计算交易成本的方法有:常值型交易成本,线性交易成本,分段型交易成本。在真实的交易环境中,由于市场冲击成本的存在,每次交易的成本都是不一样的,常值型和线性交易成本的缺陷非常明显,而分段型交易成本在实际操作过程中略微复杂,因此精确的计算出交易成本本身就是一项技术活。

如果可以确切的计算出策略模型运行过程中的交易成本,那么其可以预测每笔交易的净盈利,这样就可以控制交易的频率。众所周知的是,短线交易由于其频率高,累积交易成本甚至达到其收益的30%以上,那么宽客可以通过改变下单方式等降低其交易成本,从而达到提高收益的目的。如果一个策略模型运行产生的交易成本超过收益数倍,那么这个策略模型并不具有可行性。
投资组合构建模型:投资组合构建模型在于构建一个能创造最大盈利的投资组合。主要分为:基于规则的投资组合构建模型和基于优化的投资组合构建模型。基于规则的投资组合构建模型主要分三类:相等头寸加权,相等风险加权,信号驱动型加权。其中前两类分别保证了投资组合的每个个股头寸相等和所承担的风险相等。第三类根据信号强度来加权,投资组合中个股与策略模型设定的条件越接近则赋予的权重越大,这是合理决定头寸规模的最佳途径。
执行模型:执行模型是实施量化模型的最后一个环节,如果没有执行模型,那么整个量化模型并没有存在的意义。执行模型中订单执行算法是最关键的,其主要目的是,以尽可能低的价格,尽可能完整地完成想要交易的订单。具体的执行算法包括:采用何种订单类型,采用进取订单还是被动订单,采用大订单还是小订单。对于资金量比较小的宽客,执行模型往往是比较简单的,一旦出现信号,其所需成交量的并不需要太大。而对于资金量较大的宽客来说,执行模型是比较复杂的,需要根据实际情况来选择合适的下单方式。
以上就是量化模型的整个系统框架,其中任何一个部分都发挥至关重要的作用,因此一个完整的能盈利的量化模型是非常有价值的。
你也可以登录MindGo量化交易平台(http://quant.10jqka.com.cn)社区查阅其他量化投资相关资料~
10#
热心的小回应  16级独孤 | 2020-12-27 06:41:04 发帖IP地址来自
果仁网(http://www.guorn.com




9#
热心的小回应  16级独孤 | 2020-12-27 06:41:03 发帖IP地址来自
同花顺MindGo量化交易平台:quant.10jqka.com.cn,提供多种特色数据,定期开展股票量化大赛,提供参赛者交流的平台!
带你入门MindGo-我的第一个策略
语言学习:学习干货
干货满满的社区:社区-MindGo
8#
热心的小回应  16级独孤 | 2020-12-27 06:41:02 发帖IP地址来自
你这个问题我研究过,可以详谈哦
7#
热心的小回应  16级独孤 | 2020-12-27 06:41:01 发帖IP地址来自
自己用python做了个模型,包含下面模块:

模型回测结果:

回测区间:2013.1.1~2017.12.31
年化收益:78.55%,最大回撤23.78%,夏普比率2.77。
回测参数:

tra_buyFeeRate = 0.0005 # 买入手续费
tra_sellFeeRate = 0.0015 # 卖出手续费
tra_freeRate = 0.03 # 无风险利率(年)
tra_initAsset = 1000000 # 初始资金
tra_totalLimitRate = 1.0 # 最大仓位


作者:小刀量化
链接:https://xueqiu.com/1639516124/103587049
来源:雪球
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
6#
热心的小回应  16级独孤 | 2020-12-27 06:41:00 发帖IP地址来自
自己做了个股票量化开源系统,可视化,支持选股,历史数据自动下载,策略回测及参数优化,实盘交易和常用的统计功能。github链接moyuanz/DevilYuan
5#
热心的小回应  16级独孤 | 2020-12-27 06:40:59 发帖IP地址来自
印钞机量化文章 http://www.jianshu.com/p/4ba3a10ea9e5 可以参考
4#
热心的小回应  16级独孤 | 2020-12-27 06:40:58 发帖IP地址来自
推荐2个地方,有的学有的玩,绝对不亏,聚宽、果仁,别因为我回答的短无视我啊
3#
热心的小回应  16级独孤 | 2020-12-27 06:40:57 发帖IP地址来自
看这个 穿刺量化分析
昨天新鲜出炉的
2#
热心的小回应  16级独孤 | 2020-12-27 06:40:56 发帖IP地址来自
把你做股票成功的分析规则,系统化,量化,这就是一个量化交易模型。你可以程序化,也可以不程序化,严格按照系统执行,就可以了。
下面讲一讲我们如何用level2大数据预估大盘和个股:
第一个分析图是每天的主力大单净流出,红色是流入,绿色是流出;第二个图是上证指数每天的变化;第三个是主力流入(红色)和流入(绿色);

可以看到的是,每当上证指数大跌时,其实主力大单净流出已经好几天了。我们就是依据这个,避开大跌,每当新出现连续3天的净流出,我们就会大量减仓,避开大跌。
比如20180802的大跌,我们提前知道要跌(见我在社区上在0801发的回答),用的这张分析图(我们网上和公众号可见):第一个图是我们计算的主力大单净流出,第二个图是上证指数,第三个图是主力大单流入(红色)和主力流出(绿色),注意,都是以我们的标准和方法计算,是跟着主力大单计算:

如果按自然趋势,上证还得跌。主力流出329亿,高于0731的233亿。主力净流出93亿。”这是我在0802早上开盘前写的原文。然后,大跌。
再看个股:

这是300489,我们最近在做的一只股,我们在0810买入以后一直观察,昨晚看了数据以后立刻决定今早抛出,为什么?主力流入一直变少,大盘又疲软,说明很难涨,早上在14.12抛出,盈利2.9%。
我们用level 2数据和价量数据进行股票分析和量化买卖,模型用VBA写成,直接读取数据库和csv文件,外加一些爬虫。我们网站有level2数据,里面还有个统计分析工具可以看大单小单和主力动向,有兴趣可以看看。

level2数据最重要的一点是,基础成交明细没法作假,不管你是拉高也好,出货也好,都可以看出痕迹,这就是level2成交明细的价值所在。注意level2成交明细不是3秒一次的tick成交明细数据。
这个数据得看长期的趋势,几个月。然后你就知道有没有主力,主力在干什么。知道有主力埋伏以后,你就可以判断主力是买还是在卖,是买的话,就可以入了,短线成功率很高。我们采用波段和短线结合的方式反复套利,直到大涨,单日涨5到10个点必抛。
Level2数据的用处很多,我们还在继续挖掘,有兴趣的可以看看我们网上。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3118703
帖子:623848
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP