量化交易的工具
来源:雪球App,作者: 量化交易系统初探,(https://xueqiu.com/2483394840/167212995)
如果我们的资金规模很大,而且需要对多个市场,上百种品种进行量化交易且需要复杂的风控模型来控制风险的话,我们一定需要通过编程来打造自己的交易系统。并需要专业的团队来运维它。但是如果我们只是想做一个宽客,拿自己或者亲友的资金进行交易,国内外很多专业的可视化的量化分析平台就可以满足我们的需求,并且可以大大降低我们入门的门槛。本节我们介绍几个平台,他们都有自己的特殊,针对点也不同,我们可以慢慢的根据自己的需求去使用这些平台来开发自己的策略。
TradingView
TradingView是一个先进的可视化金融平台,易于使用的现代化网站。 无论您是查看基本价格图表还是绘制具有重叠策略回溯测试的复杂商品,TradingView都有您需要的工具和数据。其网站是 https://www.tradingview.com/。
第一个推荐TradingView,是因为它简单易用,上手快,而且品种齐全。很多数字货币交易所的网页版也是基于TradingView来开发。虽然TradingView简单,但它功能却很强大。我们可以基于TradingView所提供的脚本语言Pine定制开发自己的指标和策略。如图1-1为在TradingView中对一个策略进行回测的结果展示。TradingView降低了量化投资的门槛,上面有很多优秀的交易者免费公开分享了自己的策略和指标。你甚至不用具备太多金融和开发方面的知识,只需简单的操作,就能找到一个适合自己的策略来进行交易。图1-2展示了TradingView社区中公开指标库,我们可以搜索自己想要寻找策略。当你对策略有疑问的时候,也可以点击策略作者的头像向作者留言,如果作者时间允许且热情的话会很愿意回答你的提问,你也可以关注你喜欢的作者。
TradingView中策略回测结果展示
TradingView公开指标&策略库
TradingView策略回测绩效总结
TradingView策略回测交易清单
Pine脚本语言是TradingView设计的自己的脚本语言,它允许用户创建自定义指标并运行它们。TradingView的大多数内置指标是使用Pine脚本开发的。如果你想读懂其他交易者分享的代码或者想编写所以自己的专属的指标和策略的话,你就需要对Pine语言进行专门的学习了。TradingView提供的专业的文档和社区,可以让你更快速的上手编写自己的策略。下面是Pine脚本的用户手册: 网页链接 。
总结下来TradingView的特点:
易于上手,网页版打开,即开即用,没有复杂的安装操作。数据品种齐全,国内外各个主流市场股票、期货、 大宗商品 、外汇、ETF基金、数字货币等交易品种,这里都能找到相应的K线数据。强大的社区支持。TradingView是交易者和投资者最活跃的社交网络,与来自世界各地的数以百万计的交易者交谈,讨论交易观点和交易真实订单。TradingView提供的开放性能让你在交易之路上非常快速的成长。
发明者
发明者平台是一个及交易策略开发、量化学习资源、策略出租出售、在线交流社区为一体的平台。支持通过JavaScript、MY语言和python来进行测量开发。平台支持商品期货与易盛外盘期货, 也支持常用的数字货币交易所。除了对策略回测以外,你还可以通过平台提供的交易机器人,把策略部署到服务器上进行实盘交易。当然机器人的使用是收费的,平台上也有开发者售卖策略,你可以购买别的开发者出售的策略进行实盘交易。
FMZ网站首页
FMZ策略超市
FMZ策略回测参数配置
FMZ平台的特点:
支持大数数字货币交易所。对于想进行数字货币量化交易的投资者。FMZ算是国内最知名的平台,而且对于刚入门的新手也比较容易上手。支持多种脚本语言。MY语言、JavaScript、python的支持,给在其他平台上有经验的投资者转到FMZ平台降低了门槛。不同的开发者都可以使用自己擅长的语言进行测量开发,减少了学习成本。实盘交易。不只是对策略进行回测,如果你想投入资金进行实盘量化交易的话,FMZ提供的实盘功能,能为你降低极大的门槛。你只需付出少量的费用,就可以把精力只放到策略的开发上,而不用去关心怎样和交易所交互,怎样运维服务器,怎么管理日志等这些事情上面。
vn.py
vn.py是一个基于Python语言开发的开源量化交易平台开发框架。当你有一定的编程能力时,基于VN.PY框架,你就可以搭建属于自己的实盘交易系统。vn.py的切入点为实盘交易,与其他平台都提供了历史数据,以方便对策略回测不同,vn.py并没有自带历史数据的K线显示。正是因为去除了这些我们在实盘交易当中我们不会用到,且高cpu和高IO开销的功能,使它在实盘当中能更快的效应策略的执行。
实际的量化策略当中,由于回测与实盘当中我们关注的重点不同,往往我们编写的回测与实盘的代码不是一模一样。所有开发策略时我们可以先使用其他可视化平台(如TradingView)对策略逻辑先进行验证。当策略验证在历史数据的回测中,表现没有问题时,我们可以再针对我们要进行交易的品种,使用vn.py这样的框架(或者自己编程)来进行实盘交易。
vn.py采用了大多数量化开源框架使用的事件驱动的方式来相应数据。这样,在个人简单策略的执行中能保证策略可以被立即相应。vn.py对国内外常见的交易品种(如股票、期货、期权、外汇、数字货币),也基本都提供了交易接口。当我们的策略涉及不同平台的不同交易品种时,也可以通过vn.py进行管理。另一点vn.py开发的源代码,让我们能更加透明的看到实盘交易中我们具体遇到的问题。用户也可以根据自己的需求对底层接口和中间引擎进行修改,不在被商业软件提供的有限的功能所束手束脚。vn.py的官网: 网页链接