FMZ量化平台使用入门

Author: 扫地僧, Created: 2021-10-28 14:24:38, Updated: 2024-01-25 20:41:21

[TOC]

img

发明者量化交易平台(FMZ)

简介

FMZ发明者量化平台(原BotVS)是专业的量化社区,创建于2014年。在这里你可以学习、编写、分享、买卖量化策略,在线回测和使用模拟盘模拟交易,运行、公开、围观实盘。支持商品期货与易盛外盘期货, 也支持腾讯富途证券美股、港股、A股以及中泰证券XTP等实盘量化交易。FMZ适用于量化交易初学者,即使无基础也可以快速入门,平台功能强大灵活,也可以能满足进阶需要。


面向用户

  • 程序化交易新手,但有交易经验和策略思想,能够学习简单的编程并用于实盘。FMZ量化对接口的统一封装和范例将大大节约你的学习时间。

  • 职业或半职业的策略研究员,能够熟练的编写策略,根据用户要求定制相关策略收费。

  • 有成熟策略需要出售或需找资金,可在FMZ上展示实盘,并出租策略。

  • 有其他商品期货程序化平台使用经验,如文华财经,交易开拓者等,能够编写麦语言策略,FMZ平台很适合这些用户入门,提供更强大的功能。

  • 有稳定的运行的策略和编程经验,需要FMZ提供的网页化管理和图表功能,更好的运行自己的实盘。

  • 有编程和交易经验,需要看其它公开策略、在社区交流来寻找自己的策略思路。

  • 完全无编程经验,也不愿意学习,想购买成熟策略。(不太推荐,至少需要掌握相关知识)

    可以加企业微信: img


平台架构

img FMZ的架构特殊,不像其它交易软件需要下载客户端,基本上只需要在FMZ网站上进行管理,因此具有很多优势。FMZ网站主要功能是编写策略,管理实盘。而实盘具体执行则在用户自己在服务器或电脑的托管者上,托管者负责和FMZ网站通信来传递日志、直接运行机器人访问交易所获取行情和交易。如果FMZ网站出现短暂问题,也不会影响策略实盘的执行。用户可以将托管者部署到任何地方来提高交易速度,通过FMZ网站随时随地的管理实盘、查看日志、修改参数。更多介绍参考: https://www.fmz.cn/bbs-topic/8252


支持语言

FMZ量化平台支持使用Javascript、Python、C++等完整的高级语言,也支持可视化语言和麦语言(兼容文华财经)实现策略。


平台费用

平台按小时计费, 每个实盘, 每小时 0.125 元, 不足一小时按一小时计费,暂停后重启不重复收费, FMZ单个实盘可以操作多个交易所、多个账户、多个交易对。 运行实盘的服务器需要自己准备或者租用FMZ平台准备的服务器(价格较贵)。目前主流的海外服务器大约30元/月。只交易商品期货可以租用国内服务器。


策略安全

交易账户密码是用户重要隐私信息,FMZ并不保存用户的密码,服务器保存浏览器根据用户密码加密过的数据,实盘创建时再发往托管者,托管者解密后使用,由于FMZ不保存用户密码明文,所以用户的密码即使是FMZ工作人员也无法获取。用户需要保护好交易账户密码明文、FMZ网站密码以及托管者所在服务器。FMZ量化平台运行4年多,经过数万名用户使用,并未发生过任何安全问题。

策略源码是保存在FMZ服务器上的,如果你想本地执行策略,可将你的代码保存成Python文件,直接在策略中引用执行就行,具体方法见置顶初级教程最后的FAQ。这样你的代码就完全本地化了。如果你想出租策略而不想用户看到源码,需要用JavaScript语言编写策略,会编译成机器码由对方托管者执行,反编译的难度很高。而Python语言本身没有加密机制,FMZ最近升级了出售Python策略源码加密机制,但也无法彻底解决策略泄露的风险。如果必须用Python,可以帮客户租托管者运行策略。


入门步骤

  1. 学习一门编程语言,推荐Javascript和Python,只需要简单会使用即可。
  2. 熟悉FMZ平台使用,部署自己的托管者,熟悉策略、实盘、托管者、网站之间的关系。
  3. 浏览API文档,了解接口和功能。
  4. 学习策略广场的教学策略,并自己上手写一下简单功能的策略,如双均线策略。
  5. 构思自己的策略,熟悉具体API接口和常见的错误信息,学会正确提问和搜索相关帖子。
  6. 模拟盘和实盘运行策略,在实战中发现更多问题。

最重要的是要敢于开始学习,一步步来,所有步骤一定要亲力亲为。即使初学看起来非常困难,但当你完成第一个策略后,会发现一切都如此简单。如果你有一定的编程基础,一周内可以入门写出策略,如果不懂编程知识,需要额外一周学习最基础的编程知识。如果原来使用文华财经,熟悉麦语言,则只需要了解平台使用就行。如果遇到问题,可以发工单 https://www.fmz.cn/m/tickets ,一般都会很快解答。注意先尝试搜索文档或论坛解决,提问时问题需要提供充足的信息。


学习资源


30分钟运行一个实盘

从头开始运行一个实盘的步骤如下:

  1. 添加交易账户密码到FMZ网站。
  2. 创建需要运行的策略。
  3. 部署运行实盘的托管者。
  4. 创建实盘。

1.交易账户

商品期货开户 发明者量化现在与宏源期货郑州营业部进行深度战略合作,凡是发明者量化的用户,开户后即可申请手续费优惠,手续费优惠至交易所基础加1分,投资者保障基金为千万分之八(成交额的 0.00008%),手续费优惠至极限!开户教程: https://www.fmz.cn/bbs-topic/8253

添加交易账户 进入添加交易账户界面 https://www.fmz.cn/m/add-platform ,如下图所示首先点击下拉框,然后搜索“宏源期货”,并选择宏源期货主席(看穿式监管),接着在右边填入期货账号和密码,最后点击“添加交易所”。

img

如果想进行商品期货模拟交易,需要添加SimNow,具体步骤参考:https://www.fmz.cn/bbs-topic/8254


2.创建与修改策略

在策略页面:https://www.fmz.cn/m/add-strategy ,点击“新建策略”即可。为了演示我们直接复制一个策略即可,在策略广场的教学策略中可以找到“阿隆(Aroon)技术指标在商品期货中的应用"的公开策略,地址 https://www.fmz.cn/strategy/326012 ,点击复制策略。

下图为复制后的策略,参数是全局变量,在策略代码中可以直接引用。点击最下方的“创建策略",就可以在自己的策略库看到这个策略了。

img

如果修改了策略,只需要保存策略再重启运行该策略的实盘即可生效。


3.部署托管者

托管者页面:https://www.fmz.cn/m/nodes 。前面说过,用户的实盘不是由FMZ平台运行,而是由用户自己运行,所以需要一个执行策略的程序,就是托管者。托管者可以运行在Linux\Mac\Windows上。用户可以自己选择服务器提供商购买Linux服务器(系统一般可选centos),服务器可选阿里云、华为云、腾讯云等。服务器配置一般选最低即可,价格约为2元/天。

购买服务器看起来很困难,但是是进行量化的必须步骤,如果觉得麻烦,可以从FMZ平台直接按时一键租用,FMZ会从阿里云等服务器厂商直接租用新的服务器并自动部署用户的托管者,可以省去自己租用服务器和管理的麻烦,最为简单但价格相对较贵。

img

如果你的电脑是Windows系统,可以选择64位界面版,解压后右键以管理员权限运行robot程序。把网站上的地址(每个用户都不相同,登陆后在托管者页面查看)和FMZ网站密码信息填写到程序中,点运行,如出现Login OK之类的字样说明运行成功。在托管在目录可以看到logs文件夹,实盘日志将保存在那里。在托管者管理界面可以看到刚才部署的托管者。

img

如果实盘程序不是特别吃性能,一个托管者可以运行多个实盘(服务器最低配置运行十几个实盘也没问题),注意一个服务器也可以部署多个托管者,但一般不需要。托管者和FMZ网站通信来返回实盘状态以及控制实盘。如果一个托管者彻底离线,将无法操作由此托管者运行的实盘,则需要将此托管者删除。如果添加新功能旧托管者不支持,会发出公告,用户可以根据自己需要选择更新。


4.创建和管理实盘

以上工作做完后,才可以实际运行一个实盘。在实盘页面 https://www.fmz.cn/m/robots 点击“创建实盘”,出现以下设置:

img

创建实盘时需要设置实盘名称、选择托管者、选择策略,修改策略参数、选择K线周期、选择交易账户等。一个实盘可以添加多个交易账户。除了运行的策略外,其它参数都可以在某个具体的实盘的页面修改。

创建实盘后,可以在实盘页面找到,点击可进入正在运行的实盘。

img

至此,我们就创建了一个实盘,是不是很简单。


具体平台功能详解

首先是登陆后的控制中心主页面,其中侧边和顶端是导航栏目,下面将一一介绍。 img

  • 控制中心:用户的操作界面。https://www.fmz.cn/m/dashboard
  • 策略:策略广场,用户公开和出售的策略在这里,可以点击相应的标签筛选某一类的策略。https://www.fmz.cn/square
  • 围观:用户公开运行的实盘,可以进行围观评论。https://www.fmz.cn/live
  • 文库:FMZ官方出品的一些精品文章。https://www.fmz.cn/digest
  • 社区:用户发帖提问交流平台。https://www.fmz.cn/bbs
  • 众包:发布需求和代写策略,一切由用户自行联系,FMZ官方不担保。https://www.fmz.cn/markets
  • API文档:FMZ编写策略所需要的API介绍,关于API有问题可以在这里搜索。https://www.fmz.cn/api
  • 策略库:所有的策略位置.
  • 交易所:添加的所有交易所
  • 托管者:添加的所有托管者
  • 实盘:运行过的所有实盘,包括已停止的
  • 调试工具:方便的调试部分代码,不用创建实盘
  • 交易终端:简单的手动交易界面
  • 研究环境:支持用jupyter notebook进行策略研究.
  • 账单:消费和充值记录
  • 消息:各种类型的消息通知
  • 工单:有问题除了发论坛,也可以直接发工单
  • 数据探索:平台保存的K线和实盘级数据,方便浏览和保存
  • 分析工具:对行情进行简易的计算分析

实盘管理

img

  • 1.实盘的名字,点击可进入此实盘管理页面。
  • 2.实盘机器人的分组名称,方便管理大量实盘。
  • 3.此实盘机器人运行的策略名称。
  • 4.实盘状态,由正在运行、停止、完成、出现错误四种状态。
  • 5.实盘盈利,具体不一定代表了盈利数据,使用户自己输出,可以代表任何数据.
  • 6.公开自己的实盘,可以在围观中让其它用户看到。
  • 7.监控实盘,实盘停止后自动推送消息。
  • 8.停止或重启实盘机器人。
  • 9.当前账户余额和实盘可运行的时间。
  • 10.对策略的分组进行管理

策略管理

img

  • 1.策略名称
  • 2.分组名称
  • 3.策略操作选项,如公开、租用、出售等
  • 4.添加和管理新的分组,可以把不同类型的策略分组,方便管理

策略编写界面说明

img

策略编写可以在FMZ网站进行,也可以通过远程编写。策略参数将放在下个教程讲解。

  • 1.点此进入回测,关于回测的具体说明将放在策略编写初级教程里。
  • 2.策略使用的语言选择,策略创建后不可切换语言。
  • 3.策略名称。
  • 4.选择策略类型,如通用策略、商品期货、股票证券、模板类库、交易插件
  • 5.选择策略分组
  • 6.笔记是编写策略的记录,仅自己可见;描述是策略说明,策略公开后其他人可以在策略页面将看到;手册是策略的使用说明,购买或复制策略的可以看到。
  • 7.保存,可在编辑状态使用Ctrl+S的快捷键。
  • 7.保存回测设置:会把回测参数保存在代码前面,重新打开策略将保留回测设置.
  • 7.下载源码:将代码下载到本地。
  • 7.导入导出策略:顾名思义,并且策略的参数和各种设置一并保留。
  • 7.皮肤:不同的代码背景和着色风格。
  • 7.代码美化:自动整理代码。
  • 7.开启VIM模式,Vim是常用的无界面编辑器,功能强大。全屏 + VIM = 专注的大神。
  • 8.远程编辑,包含常用的代码编辑器插件,可在本地编写策略,自动同步到FMZ。具体说明:https://www.fmz.cn/api#远程编辑
  • 9.选择要引用的模板,要先在策略广场把模板复制下来。
  • 10.策略参数,参数将在下篇教程详细介绍。
  • 11.开始回测

分享或出售自己的策略

img

在操作项的下拉选项中可以看到“分享”选项,有内部分享和公开分享两者方式。内部分享流程如下:

img

最后生成复制链接,其他人打开此链接即可,输入复制码,就可以获得这个策略的源码和参数了。

复制地址: https://www.fmz.cn/m/t/161415
复制码: e3d2e2edd3060bd6f477c1106cf182f5

选择公开分享,你的策略就会出现在策略广场中,所有人都能看到。

选择“出租”有两种方式,内部出售、公开出售,和公开策略的不同是,其他人通过复制地址将无法获取源码,只能运行实盘。

内部出售是最常用的方式,如果你有策略需要单独分享给他人(不一定收费)可以选择此方式,填写好有效期和并发数量。公开出售的策略出现在策略广场的收费策略中,需要经过审核并且公开一段时间的实盘。


交易终端

交易终端是一个网页版的交易页面,在这里可以手动操作自己添加的所有交易所。 img

  • 1.执行指令的托管者,账户信息、下单之类的都要发到该托管者上执行
  • 2.选择交易账户
  • 3.选择品种
  • 4.部分行情是由FMZ网站推送的,此时提示高速通道。对于没推送的数据,可以选择手动刷新或定时刷新
  • 5.行情K线
  • 6.账户信息,定时或手动刷新
  • 7.手动下单页面

账户管理与充值

左侧导航进入充值页面,具体说明如下:

img

点击网站右上角账户头像进入账号设置,在这个页面管理自己的FMZ账户,这里简要介绍。

  • 消息中心:各种消息汇总,包括论坛回帖、工单信息等消息。
  • 谷歌验证:最好开启谷歌二次验证,提高安全性。
  • 额度预警:当账户可用余额小于此值时, 您将会收到邮件与微信通知, 设置为0禁止用此功能, 没有充值或者更改此设置的情况下, 24小时内只通知一次
  • 推送设置:这里可以绑定微信,Telegram,邮箱等,用于接收实盘的推送消息。
  • API接口:FMZ也有自己的API,基本上实盘的所有操作都可以通过API完成,提供了丰富的扩展性。
  • 子账户组:可以创建只有部分权限的子账户功能,可用于策略修改共享账户等作用。
  • 推广返佣:推广FMZ平台,可以获得注册用户充值的返佣,推广链接的形式如下:https://www.fmz.cn/sign-up/8408010 。具体说明: https://www.fmz.cn/bbs-topic/8260

微信控制实盘

绑定微信后,可以查看实盘状态、FMZ账户余额、以及发送指令控制实盘。具体参考: https://www.fmz.cn/bbs-topic/8261

企业微信

img


更多内容

啊发lol hhh