关灯

[原创] 不用敲代码就可以量化交易?

[复制链接]
admin 发表于 2019-1-20 10:51:17 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
 
NO.1

1539841152788701211.jpg

 

在华尔街,量化交易已经是市场交易的主导力量。很多国际顶尖投行,已经禁止人工做方向性投机交易。国内的量化交易发展也非常迅猛,机构在用,合约高手也在用,参与量化交易的人越来越多。但周围也有很多对量化交易感兴趣的手工交易者。刚开始信心满满,等看完即冗长又复杂的代码后,往往又望而却步,或者浅尝辄止。

 

1539841166095565898.jpg

 

为普及大众,降低量化交易编程门槛,大幅提高编写效率,发明者量化(FMZ)开发了一款可视化量化交易平台。

 

 

 

NO.2

在传统编程中,你得熟悉编程语言的基础语法、数据运算、数据结构、逻辑控制......此处省略一万字。我们用 Java 写一个输出 “ hello, world ” 的程序,来感受一下传统编程,如下:

 

1539841183865081410.jpg

 

仅仅只是输出一个字符串程序,就写了 5 行代码。相信大多数初学者,只认识括号中的 “ hello, world ”,其他更是无从下手。所以,比起手足无措,以可视化编程为入门,不失为更好的选择。可视化编程由来已久,并不是新鲜事物。这种 “所见即所得” 的编程思想,搭载着各种控件模块,仅仅以拖拽的方式,就可以构建代码逻辑,完成交易策略设计,过程很像搭积木一样。

 

1539771402662068471.jpg

 

如上图,同样的程序,在 blockly 可视化编程中只需要一行代码就搞定。这极大的降低了编程门槛,尤其针对那些完全不懂编程的交易者,这是非常棒的操作体验。

 

发明者量化的可视化编程,也正是借着 Google 发布的 blockly 可视化工具来实现的。在设计上与麻省理大学推出的 Scratch 一样,真 · 零门槛。

 

1539841266412940152.jpg

 

发明者量化的可视化编程,内置上百种常用交易模块,后续会有更多的交易模块加入,来支持交易者的新思想和新应用,这些将由开发者共同开发和维护。虽然语法简单,但又不失性能。几乎可以满足大多数量化交易策略。无论是在功能、速度上,不输于 Python、JavaScript 等常规编程语言。未来将会支持逻辑复杂的金融应用。

 

 

 

NO.3

如何使用

第一步:注册并登录发明者量化(FMZ)官网:www.fmz.com

1539841280133548396.jpg

 

第二步:进入控制中心

1539841295631530708.jpg

 

第三步:点击编写新策略

1539841307287053590.jpg

 

第四步:选择可视化编程语言,选择交易类库

1539841323584579573.jpg

 

最后,就进入可视化编程界面了,如下图:

 

1539841346829224648.jpg

 

NO.4

用发明者量化可视化编辑器,试着写一个输出 "hello, world" 的程序

 

第一步:选择输出模块

1539841372135146166.jpg

 

第二步:选择文本模块

1539841412794585432.jpg

 

第三步:设置回测

1539841429972762815.jpg

 

第四步:回测结果

1539841439475634526.jpg

 

 

NO.5

一个完整的数字货币动态平衡策略

策略逻辑

  • 买入条件:如果当前持仓市值减去当前可用余额小于负当前可用余额的5%,就开仓买入。

  • 卖出条件:如果当前持仓市值减去当前可用余额大于当前可用余额的5%,就平仓卖出。

 

前提必要条件

  • 当前行情

  • 当前资产

  • 币总市值

  • 资产差

 

可视化编写策略第 1 步

我们把交易策略的4个前提必要条件加以计算,并分别赋值给各自变量。以可视化编程,代码块是这样的。如下图:

1539841453843915144.jpg

 

需要注意的是,币总市值也就是当前持仓币数的总市值,其计算方法就是,当前持仓总币数乘以当前的最新价格。资产差也就是币总市值减去当前的可用余额。

 

 

可视化编写策略第 2 步

前提必要条件赋值完成后,就需要写交易逻辑了。这个也没有想象中那么复杂。无非就是把上述的策略逻辑,用代码块的形式表现出来。即如果资产差小于负可用余额的5%就买入,如果资产差大于可用余额的5%就卖出。如下图:

1539841465431513096.jpg

 

整个策略似乎已经写完,但是要知道,程序是从上到下执行的,执行完之后就停止了。但是我们的交易策略并不是把交易条件执行一次就行,而是循环往复的重复执行。

 

也就是说,程序需要不断的检查策略条件是否已经达成,如果是就执行买卖,否则就一直检查下去。这个时候就需要用到另一个循环语句,如下图:

 

1539841478126883712.jpg

 

可视化策略跟其他编程语言写的策略没什么本质区别,同样支持多种周期、做种精度的历史数据测试,当然也支持国内外商品合约和数字货币实盘交易。以下是该策略的回测信息:

 

1539841489294885023.jpg

 

至此,一个完整的交易策略才算完成。为了照顾伸手党,本篇策略已经分享到策略广场中,可以直接复制研究。

 

策略链接地址:

https://www.fmz.com/strategy/121404

 

 

 

NO.6

一万小时定律始终存在,但是对于零基础的交易者来说,不可能花一万个小时再入行。所以你必须有一把梯子,而对于零编程基础的交易者来说,发明者量化的可视化编程就是一把快速入门的梯子。

 

利用可视化编程,你无需记住语法和方法名称,只需简单地浏览功能模块,从中找到你想要的即可。发明者量化的初衷也在于此,意在帮助更多的量化初学者降低准入门槛,提高量化兴趣,人人都可能成为量化交易者!

 

1539772013694936153.jpg

 

不过,话说回来,可视化编程作为量化入门的敲门砖是完全没有问题的,但也有自己的局限性,比如不能开发过于复杂、过于精细化的交易策略。

 

但这并不影响你迈出量化交易的第一步!

 

最后,祝所有想做量化交易朋友们,不管是不是零基础,都能够通过行动来达成自己的学习目标。感谢您的阅读!

回复

使用道具 举报

 
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


1关注

0粉丝

1603帖子

排行榜

关注我们:微信订阅号

官方微信

APP下载

全国服务热线:

4000-018-018

公司地址:上海市嘉定区银翔路655号B区1068室

运营中心:成都市锦江区东华正街42号广电仕百达国际大厦25楼

邮编:610066 Email:3318850993#qq.com

Copyright   ©2015-2016  比特趋势Powered by©Discuz!技术支持:迪恩网络