易得程序化交易系统

易得图表程序化是以虚拟初始投入资金为基础,根据图表中的历史K线数据和加载的交易系统公式计算执行,产生一系列的交易信号而形成的交易结果。在这个过程中就会形成一套独立的,包括资产、持仓、现金、盈亏、持仓成本等数据的虚拟数据系统。

图表程序化的整个过程与真实账户无关,它以虚拟初始投入资金严格按照交易系统公式的逻辑执行,从而产生交易信号。在交易信号出现的时候,不会考虑盘口挂单、撮合机制等因素的影响,也就是说出现了交易信号,如果虚拟资金还没用完就一定能买得到或者卖得出去,因此我们也将其称之为理论持仓、理论计算结果。

上面我们说到图表程序化计算的过程与真实账户无关,如果要进行实盘的交易,真实账户只在最新k线上的理论持仓发生变化时,跟随其后进行同方向的实盘委托即可完成交易。也就是说实盘账户跟着虚拟账户的最新计算结果买卖就是了。

图表程序化是一种“所见即所得”的交易方式,根据交易系统公式算出在历史K线数据上的各个开平仓位置,并将开平仓信号显示在K线图上。是最简单的一种程序化交易方式,非常适合新手用户使用。

进行图表程序化加载的公式必须是“交易系统”类型的公式。对应的“交易系统”类型的函数包括有BUY(开多)、SELL(平多)、HOLDING(持仓量)、CASH(现金)、ASSET(资产)等100多个。凡是使用了这类函数的公式,系统都会为这个公式创建一套以虚拟初始投入资金为基础虚拟数据系统,并以这个虚拟数据系统进行执行。刚提到的HOLDING、CASH都是取得虚拟盘产生的持仓量和现金。

见”期货交易”文档-期货CTP交易登陆

打开选定品种的K线图,选择好数据周期(1分钟线、5分钟线、日线等),设定除权方式(默认向前复权)。

图表程序化交易运行在“交易系统”类型的公式上。加载公式的方式很多,常用的有直接敲公式名称由键盘精灵载入,或者在左侧的管理面板的公式树中双击载入,或者在公式树直接拖拽到想要的主图或附图。管理面板的调出方法:鼠标点击易得系统最左侧边框或者Shift+W快捷键。

调出图表程序化交易对话框的方法有2种:

启动图表程序化的方法有2个:

此时程序化交易已启动成功,苦脸会变成笑脸图标。

停止图表程序化的方法跟启动程序化交易的操作完全相同,只是启动交易按钮此时变成停止按钮,笑脸变成了苦脸图标。

是指在盘中每接收到一笔Tick分笔行情数据就执行一次公式计算。这种方式的优点在于不会错过每笔Tick行情数据;缺点在于如果在多笔Tick合成的数据周期中(比如1分钟线),会造成信号的闪烁。因为1分钟线是由一分钟内成交的所有分笔数据合成,每收到一笔Tick的时候该周期的K线还没有最终走完定型,数据后面还可能会变。如果此时计算生产了交易信号,在后续行情改变了该K线周期的数据后,再次计算交易信号又可能消失了。

信号消失的问题为公式的回测带来了难题,因为在历史数据中是无法还原该周期内每笔Tick的情况,造成了回测跟盘中实际执行的结果不一致。

如果数据类型是分笔数据周期,因为该周期就是由一笔Tick数据生成,就不存在信号闪烁的问题。这种情况下每笔Tick行情执行频率跟下面介绍的走完整根K线的实际效果也是一样的。

理解了上面的每笔Tick行情驱动,走完整根K线也就很好理解了。就是每来一笔Tick行情数据的时候先按兵不动,等待该周期的最后一笔Tick行情数据到来之后再执行。这时候这根K线的数据已经定型不再改变了,所以就不会出现信号闪烁的问题,盘中实际的执行结果跟回测的结果是一致的。

这样每根K线只会计算一次,如果是1分钟线,也就是每1分钟执行一次公式计算。

新生成K线跟走完整根K线模式的差别在于,走完整根K线是在该根K线最的最后一笔Tick到来后执行,而新生成K线则是在该根K线的第一笔Tick到来后就马上执行,该根K线后续的Tick数据变化都不再执行。

因为每根K线周期也是仅执行了一次公式,所以也不存在信号闪烁的问题。盘中执行的结果跟回测的结果可能会不一致,但如果您的公式只是用了该根K线的开盘价,那么盘中执行结果跟回测结果却是一样的,因为开盘价在第一笔Tick到来的时候就确定了。

说了这么多,到底哪种模式最好呢?其实每种模式各有特点,没有好坏、更没有对错之分。只要您了解了其运行的机理,您就可以选择一款最适合您的策略初衷,最符合您应用场景的执行频率模式。

持仓同步可以手工持仓同步和自动持仓同步,手工持仓同步很简单,就是手工点击“手工持仓同步”按钮,根据仓位差进行加减仓下单操作。

当根K线有信号不自动同步是指当前执行的K线如果产生了交易信号,在自动同步的时候就跳过不进行同步,避免程序化报单和持仓同步出现重复交易的情况。

同步下单需确认是同步的加减仓下单指弹出确认框点击确定后再执行,以免出错。

我们可以从上图来理解持仓同步的过程,上面的K线图和下面的程序化信号列表上都标注了7个对应的交易信号。其中第一个和第三个信号是由持仓同步来完成的。

第三个信号,由于公式执行的下单价格是4726,但价格一路上涨以致未能撮合成交。所以持仓同步机制检测到了实际账户持仓和理论持仓的差异,先对刚才价格4726的委托进行了撤单,再按市价进行了加仓操作。

我们注意到持仓同步都是按市价进行报单的。在持仓同步报单之前,会对本图表程序化交易产生的相同标的的所有未成交委托进行撤单,以免造成重复委托。需要注意的是,只对本图表程序化策略交易产生的相同标的的所有未成交委托进行撤单;对该标的的手工委托报单或者其他程序化策略的委托报单,不进行撤单。

如果在高级设置里设置了信号下单需手工确认,那么交易信号需由右键菜单的“执行下单”或双击信号列表来发出报单。

在右键菜单中可以删除列表中的交易信号记录,在图表程序化运行的过程中不建议删除。因为上节讲到的持仓同步撤单,就是根据这里的交易信号记录来区别是否是本策略发出的未成交委托。

在右键菜单,还支持对交易信号列表的导出。

打开日志所在目录查看图表程序化交易日志。

信号选择可以勾选Buy、BuyShort、Sell、SellShort进一步控制四种交易信号,比如如果没有勾选Buy,那么公式中的Buy指令将不执行。

下单需手工确认是指在公式执行中产生的交易信号将会在信号列表中列出,不自动下单。用户可以在信号列表中通过右键菜单点击“执行下单”按钮或双击确认下单。

最多保存N条交易信号到信号列表,如果超过了将删除前面的超出部分,0表示全部保存不删除。

启动时检测交易信号并执行,是指在图表程序化刚启动的时候会根据历史数据进行一次全历史的公式计算,如果最后一根K线有交易信号,可根据此选项是否执行下单。

保存下单日志是指将交易信号明细写入日志文件。

下单品种映射功能,可实现图表程序化监控源品种,而下单指向到另一只品种。如果使用下单品种映射功能,在下单函数中应避免使用LIMIT限价委托,因为监控的品种的价格与目标品种价格可能相差太大,除非取得目标品种的价格作为限价价格。建议使用MARKET市价委托。

如上图,图表程序化运行在白银指数上,而下单执行的是白银月份合约。

通过"账户下单系数"和"合约下单系数"两项共同作用,用户可以调整实际下单的倍数。下单指令将会对当前账户和勾选的多个账户同时进行下单。上移下移可调整账户下单顺序。

账户实际下单数量=下单数量*账户系数*合约系数。

注意:此设置仅在当前图表程序化策略下单起效,不会作用于外部手工下单;外部设置的手工下单多账户系数也不会作用于此图表程序化下单。

用户可以在执行下单时启用各种下单类型的声音提示,支持wav格式的音频文件。勾选启用可以设置该下单类别的声音是否起效。

图表程序化支持自定义策略执行的资金、费率、保证金率等。

我们知道在公式编辑器中编写交易系统公式或者后台程序化公式,会出现“执行设置”按钮,里面也有相同的资金费率设置。所以上图中,如果您勾选了下方的“使用公式自有设置”,那么这个页面的设置都会变灰不可修改,按照公式编写中的资金费率执行。如果没有勾选,那么就可以自定义不同于公式中的资金费率设置。

见上图,系统包含了各个品种的默认费率和保证金率,这些数据可以从各个经纪商下载同步。如果在高级设置的资金费率页面上方勾选了“使用系统默认保证金费率”,就使用系统的默认配置数据。如果不勾选,那么就可以自由设置。

费率可以按成交额的百分比收取或者按成交量收取。

滑点成本是指在限价委托中,对于交易信号的下单价格会按品种最小变动单位顺价几个点位的价格,以便委托更容易成交。对于市价委托无效。

比如,下单执行价格是10.0元,品种最小变动单位是0.02元,设定了滑点成本开仓平仓都是2个变动价位。那么对于不同下单指令,最终下单价格会有调整:

开多:10.0+(0.02*2)=10.04元平多:10.0-(0.02*2)=9.96元开空:10.0-(0.02*2)=9.96元平空:10.0+(0.02*2)=10.04元

固定合约乘数,勾选是指忽略各个品种的标准合约乘数,使用固定一个数值。没有勾选则使用品种标准的合约乘数。

我们知道下单所需资金的计算是价格*下单量*合约乘数*保证金比例。有些品种如AU黄金的合约乘数是1000,或者价位较高。如果虚拟资金为100万,某些策略在历史数据的计算过程中可能很快将虚拟资金耗完,导致后续不能再开仓。固定合约乘数可以忽略这些限制让策略更好地验证执行。

勾选允许零股买卖可以不按最小手数交易,允许零股买卖。

虚盘初始金可以进行自行修改。

同样,在公式编辑器中编写交易系统公式或者后台程序化公式,会出现“执行设置”按钮,里面也有相同的追单、撤单设置。所以上图中,如果您勾选了下方的“使用公式自有设置”,那么这个页面的设置都会变灰不可修改,按照公式编写中的追单、撤单设置执行。如果没有勾选,那么就可以自定义不同于公式中的追单、撤单设置。

自动下单前先撤该品种所有未成交单

自动下单前先撤该品种同向未成交单

这两个设置都非常好理解,其中同向是指开多、平多、开空、平空四种相同的委托。

1)N秒不成就撤2)N秒不成就撤,然后N档内追单,再不成就立即撤单3)N秒不成就撤,然后N档内追单,再不成就挂单不动4)N秒不成就撤,然后N档内追单,再不成就市价追单

注意N档内追单,是指按之前的委托价格顺价N档;如果之前的委托是市价,那么就去最新价顺价N档。顺价的意思是开多和平空就加N档价位,平多和开空就减N档价位。N档价位等于N*品种最小变动价位。

平仓顺序:分为先今后昨和先昨后今,是指先平今仓还是先平昨仓。此设置仅在上期所和上期能源所起效,其他期货交易所不区分今仓和昨仓。

思考:追单和自动持仓同步都是对未成交单进行纠错补单的一种方法,所以使用者在同时使用准单和自动持仓同步时,应该考虑这个问题,这两种方法的同时使用可能造成补单重复的问题。

THE END
1.技术分析“期货一分钟均线战法:高效交易策略与实战技巧全解析对调整应保持耐心、宽容、平静与谨慎。https://www.55188.com/forum.php?mod=viewthread&tid=27493450
2.期货开盘前一分钟怎么底价挂单正常挂单就可以的,不会操作可以点击头像加微信介绍。https://licai.cofool.com/ask/qa_4296212.html
3.MT4MT5外汇ea外汇指标外汇交易系统下载一、外汇短线交易的必备知识 (一)如何来做 1、学习看5分钟的盘面,初学者必须慢慢积累经验。这样能培养若做股指期货,如果逆势,分分钟就会爆仓。看清大势:大道至简。看清大势,好做盘。 最好是大的主升浪首先要先了解,为什么我们要将交易系统化?其实系统化的目的很简单,就是要降低情绪对交易的影响。 不管https://www.eazhijia.com/thread-1115156-1-1.html
4.股指期货的作用而当天同期开盘的新加坡摩根台指期货跌幅为12.7%。受此影响,第二天台湾股指期货开盘随即跌停,两天累积跌幅达13%,已超摩根台指期货的跌幅。由于新加坡摩根台指期货价格涨跌幅限制几乎是我国台湾期货交易所的两倍,导致在极端市场情况下本土市场跟随新加坡市场恐慌性下跌,几乎酿成金融系统风险。https://www.cfachina.org/inv/wqbh/rxwd/202211/t20221111_31792.html
5.Python期货量化交易语言凭借其在数据分析领域的优势得以快速发展,众多软件厂商也相继推出了支持Python的量化交易平台。本书是介绍Python编程及其在量化交易领域的实践技巧的图书,旨在帮助读者掌握基本的Python编程技能,并顺利应用于期货量化交易实践。 本书内容分为两篇。第一篇是Python基础,通过13章内容介绍了Python编程的基础知识,如语法https://labs.epubit.com/bookDetails?id=UBc832797fc82f
6.文华财经期货买卖指标源码15分钟短线交易系统.doc文华财经期货软件指标公式源码准确率最高的期货指标5分钟短线交易系统100%公式源码.doc 国内、国际期货量化模拟交易系统源码 浏览:132 国内、国际期货量化模拟交易系统本系统为演示版,需要源码可联系本人获取 模拟账号 mn01000008 密码 123456 “程序化交易软件”用户端基于WINDOWS平台、C#语言开发,对机器要求更低,性能更https://download.csdn.net/download/yifeng16888/20998725
7.纯投机性衍生品确实,系统性风险会随着任何类型的投资增加。例如,系统重要性实体可以理性地投资于一家企业的股权或债券,而这家企业之后倒闭或在资本项目中失败。但是至少这些投资是在最终对社会有益的交易语境中进行的,并且资本理性地转移到了被认为最有效利用的地方。然而,对于纯投机衍生品交易,没有任何社会效益能产生。https://www.finlaw.pku.edu.cn/jrfy/gk/2013_jrfy/2013nzd86j/239804.htm