版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1TB平台程序化交易应用内容安排交易开拓者(TB)软件介绍TB程序化交易平台应用详解
模型的创建、测试和应用(演示)
监控器的使用TB公式入门要点和模型示例23产品简介交易开拓者(简称TB)是针对期货(商品、外汇、股指)设计的分析及交易的平台软件,是期货行情、多功能下单、系统化交易的完美结合;吸取国外多个领先金融交易软件(TradeStation、WealthLab、MetaStock、MetaTrader)的优点;以交易为核心,所有的功能都是围绕交易而开发;专业的系统化交易平台——用户可使用TB平台的TBL语言编写交易模型,通过测试检验,和参数优化等流程,模型确定后可通过TB平台实现系统化自动交易。提供不同层次的版本满足客户的差异化需求。
在由期货日报与证券时报合办的“第四届中国最佳期货经营机构评选暨最佳期货分析师评选”活动中,交易开拓者荣获“中国最佳期货软件服务商”奖项。5交易开拓者的用户群与对应功能普通交易者---交易师、触发单、策略易短线快速交易者---快车道、一键下单、快速平仓、程序化交易价差交易者---价差下单、套利宝、程序化交易多账户交易者---批量下单、批量触发、一键全平程序化交易者---交易模型编写平台、测试平台、优化平台机构交易者---程序化多帐户自动交易(投资组合)、算法交易TB平台的特色行情、交易速度快特有的Tick数据便捷的行情报价组合
支持商品叠加分析、价差指标易于分析和历史测试的指数数据便捷的下单、平仓、撤单功能强大的程序化交易功能6易于分析的指数数据79交易师10触发单交易快车道安全锁一键下单自动开平判断平仓反手一键撤单自动生成止赢单配合交易助手生
成止损单11批量下单之交易头寸13一键全撤14一键全平15傻瓜式自动化交易工具套利宝支持跨期、跨品种、跨市场套利支持蝶式套利
提供价差和蝶式价差分析指标策略易
参数化的程序化交易模块
可实现简单的价位突破系统、指标交叉系统
可实现止盈、止损、追踪止损等风险控制
简单的算法交易和定时平仓1718套利宝和价差指标价差下单手工开平进行价差的开平下单,动态价差曲线直观清晰;跨月换仓方便实用;
1921多账户管理TB程序化交易平台的特点V4公式平台运行效率大幅提高,支持多线程应用;TBL(TradeBlazerLanguage)语言功能强大、语法简明易懂;TB的公式执行机制是在每根BAR上都会执行一遍公式,能实现公式和算法的精确控制;具有结构化的控制语句,支持复合语句—IF语句和FOR,WHILE语句;提供了丰富的系统函数,支持用户函数,便于实现程序的模块化设计;提供A函数、Q函数等,可实时获取当前交易账户的账户信息,并能对叠加商品进行发单和撤单,便于实现头寸调整、风险控制、资金管理以及套利交易的程序化;支持单图表叠加多个商品的交易和测试;技术指标源代码公开,便于指标算法的改进;强大的图表化、多维度的交易模型测试分析报告及参数优化功能,可实现多品种、多策略、多图表周期的组合测试,提供了丰富的、和实战密切相关的系统评估指标;支持交易模型的导入导出,支持交易模型的加密和无源码模式导出,便于模型研发后的商业应用;22
TB程序化交易应用详解
23编译公式26TB
V4.2强大的测试工具投资组合性能测试报告单品种、单系统测试
单品种、多系统测试多品种、多系统测试多图表组合测试报告多品种、多系统、多周期测试
系统交易安全锁
测试结果的保存和导入交易策略参数优化报告29交易策略评估的基本指标净利润平均单笔盈利(平均利润)交易次数最大资金回撤收益风险比(年化收益/最大资金回撤)基准平均资金回撤及次数平均收益风险比TB系数(结合凯利公式)其他30主要指标的计算公式具体请参阅《TB公式开发指南》收益风险比=年化收益/最大资产回撤年化收益=净利润/总交易时间*365)调整收益风险比=年化收益/平均资产回撤平均资产回撤=资产回撤总金额/资产回撤计数都是以超过最大回撤基准线以上的回撤来计算此基准线在“全局交易设置中”设置TB系数=(平均利润×平均利润×交易次数)/(平均盈利×平均亏损)平均利润=
净利润/交易手数R平方值:根据交易盈亏曲线拟合的趋势线与收益曲线之间相关系数的平方(具体计算方式可查阅EXCLE表格中R平方值的算法)增长系数:根据交易盈亏曲线拟合的趋势线的斜率置信度=1-1/Sqrt(交易次数);头寸系数:收益风险比*R平方值*置信度/最大资产回撤31组合测试收益曲线323334监控器35
TB公式入门要点及模型示例
36
TB公式运行机制从左到右,从上到下
37
盘中和盘后公式运行的差别盘后公式的执行情况分析K线是确定的,不存在信号消失问题公式在每根K线上只执行一遍
符合开仓条件和平仓条件会标出买卖信号(使用Buy、Sell指令),但并不真正发单盘中公式的执行情况分析K线是变化的,如用最新价或基于最新价计算出的指标来作为入场或出场条件会出现信号消失问题每当分笔交易数据(tick)传来时,公式都会执行一遍
符合开仓条件和平仓条件除标出买卖信号,还会真正发单
TB公式的结构TB的公式一般由三段组成。Params NumericLength(10);公式参数段 ……Vars NumericSeriesMA;公式变量段 ……Begin MA=AverageFC(Close,Length);公式脚本段 ……End39
Bar数据(K线数据)当前时间周期下所有K线的相关数据,按照时间从先到后的顺序排列而成的序列数据。每根K线中包含的数据如下:40Bar数据含义Date当前K线的日期Time当前K线的开始时间Open当前K线的开盘价High当前K线的最高价Low当前K线的最低价Close当前K线的收盘价(最新价)Vol当前K线成交量OpenInt当前K线持仓量CurrentBar当前K线的索引值(K线的编号,从0开始)BarStatus当前K线的状态值(0—第一根K线、2—最后即最新一根K线、1—其他K线)
序列数据41序列变量序列变量序列变量序列变量序列变量序列变量序列变量序列变量序列变量序列变量序列变量序列变量NN-1…210
非序列变量(简单变量)42
非序列变量43交易指令–Buy/Sell
Buy--平掉所有空头持仓,开多头仓位;sell--平掉指定多头持仓;Sellshort--平掉所有多头持仓,开空头仓位;Buytocover--平掉指定空头持仓。
参数:NumericShare买入数量,默认=0时,使用系统设置参数NumericPrice买入价格,为浮点数,默认=0时为使用现价(非最后Bar为Close)。44交易指令A_SendOrder针对当前公式应用的帐户、商品发送委托单。该函数直接发单,不经过任何确认,并会在每次公式计算时发送,一般需要配合着仓位头寸进行条件处理,在不清楚运行机制的情况下慎用。不能使用于历史测试,仅适用于实时行情交易。参数:BuyOrSell:买卖类型,买Enum_Buy/卖Enum_Sell;EntryOrExit:开平仓类型,开仓Enum_Entry/平仓Enum_Exit /平今Enum_ExitToday;fLot委托单的交易数量;fPrice委托单的交易价格。信号消失问题(1)产生原因:使用变化的价格(如Close)或是基于最新价Close计算的技术指标,来作为交易的进场、出场或止损条件时,就会产生信号消失问题;如果编写的公式策略中存在信号闪烁问题,会导致实际交易和历史测试结果出现较大差异,所以应尽量避免;信号消失问题的一般解决办法:用前一根K线的数据来做为判断条件用能保持得住的价格来做为判断条件信号消失问题(2)用前一根K线做判断举例: condition=交易条件 If(condition[1]) { Buy(1,Open); }用High,Low,Open等做判断If(High>High[1]){
buy(1,High[1]);
}
使用系统函数和内建用户函数通过帮助文档(F1)来查找和学习
模型一:单均线系统SMAS交易规则:如果收盘价格高于均线,做多,如原来持有空单,则先平空单,再建多仓如果收盘价格低于均线,做空,如原来持有多单,则先平多单,再建空单均线周期暂采用10日交易头寸暂为1手48公式代码Params NumericLength(10); NumericLots(1);Vars NumericSeriesMA;Begin MA=AverageFC(Close,Length); PlotNumeric("MA",MA); If(Close[1]>MA[1]) { Buy(Lots,Open); } If(Close[1]<MA[1]) { SellShort(Lots,Open); }End连续建仓次数的设置如果允许连续建仓代码中限制连续建仓持仓函数Marketposition的用法:
获得当前持仓状态,返回值为整型。返回值定义如下: 0--当前持仓为空仓 1--当前持仓为多单 -1--当前持仓为空单
模型一代码(修改)Params NumericLength(10); NumericLots(1);Vars NumericSeriesMA;Begin MA=AverageFC(Close,Length); PlotNumeric("MA",MA); If(MarketPosition<>1andClose[1]>MA[1]) { Buy(Lots,Open); } If(MarketPosition<>-1andClose[1]<MA[1]) { SellShort(Lots,Open); }End
模型二:双均线系统交易规则:如果收盘价、短期均线和长期均线呈多头排列时做多,如原来持有空单,则先平空单,再建多仓;如果收盘价、短期均线和长期均线呈空头排列时做空,如原来持有多单,则先平多单,再建空仓;如持多仓,收盘价跌破短期均线,平多仓;如持空仓,收盘价突破短期均线,平空仓;短周期:5,长周期:20,可优化;交易头寸暂为1手54公式代码(1)Params NumericFastLength(5); NumericSlowLength(20); NumericLots(1);Vars NumericSeriesAvgValue1; NumericSeriesAvgValue2;Begin AvgValue1=AverageFC(Close,FastLength); AvgValue2=AverageFC(Close,SlowLength); PlotNumeric("MA1",AvgValue1); PlotNumeric("MA2",AvgValue2); If(MarketPosition!=1AndClose[1]>AvgValue1[1] AndAvgValue1[1]>AvgValue2[1]) { Buy(Lots,Open); }公式代码(2) If(MarketPosition==1AndClose[1]<AvgValue1[1]) { Sell(Lots,Open); } If(MarketPosition!=-1AndClose[1]<AvgValue1[1] AndAvgValue1[1]<AvgValue2[1]) { SellShort(Lots,Open); } If(MarketPosition==-1AndClose[1]>AvgValue1[1]) { BuyToCover(Lots,Open); }End57
模型三:MACD系统交易规则:DIF在零轴之上,并大于DEA时做多,如原来持有空单,则先平空单,再建多单;DIF零轴之上向下突破DEA时,平多不开空;DIF在零轴之下,并小于DEA时做空,如原来持有多单,则先平多单,再建空单;DIF零轴之下向上突破DEA时,平空不开多;MACD参数使用默认的(12,26,9),可优化;交易头寸暂为1手58公式代码(1)Params NumericFastLength(12); NumericSlowLength(26); NumericMACDLength(9); NumericLots(1);Vars NumericSeriesMACDValue; NumericSeriesAvgMACD; NumericMACDDiff;Begin MACDValue=XAverage(Close,FastLength)-XAverage(Close,SlowLength); AvgMACD=XAverage(MACDValue,MACDLength); MACDDiff=MACDValue-AvgMACD; PlotNumeric("MACD",MACDValue); PlotNumeric("MACDAvg",AvgMACD);公式代码(2) If(MACDDiff>=0) PlotNumeric("MACDDiff",MACDDiff,0,Red); Else PlotNumeric("MACDDiff",MACDDiff,0,Green); PlotNumeric("零线",0); If(MarketPosition!=1AndMACDValue[1]>AvgMACD[1]AndMACDValue[1]>0) { Buy(Lots,Open); } If(MarketPosition==1AndMACDValue[1]<AvgMACD[1]) { Sell(Lots,Open); }公式代码(3) If(MarketPosition!=-1AndMACDValue[1]<AvgMACD[1]AndMACDValue[1]<0) { SellShort(Lots,Open); } If(MarketPosition==-1AndMACDValue[1]>AvgMACD[1]) { BuyToCover(Lots,Open); }End63
模型四:RSI系统交易规则:如果RSI大于参数值(默认55),做多,如原来持有空单,则先平空单,再建多仓如果RSI小于参数值(默认45),做空,如原来持有多单,则先平多单,再建空单止损:持多单,RSI跌破50止损;持空单,RSI突破50止损RSI周期暂采用14日交易头寸暂为1手64公式代码(1)Params NumericLength(14); NumericUpTrend(55); NumericDnTrend(45); NumericLots(1);Vars NumericSeriesNetChgAvg(0); NumericSeriesTotChgAvg(0); NumericSF(0); NumericChange(0); NumericChgRatio(0); NumericSeriesRSIValue;Begin If(CurrentBar<=Length-1) { NetChgAvg=(Close-Close[Length])/Length; TotChgA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度车辆转让合同协议书电子版标准模板
- 互联网与传统文化保护与创新考核试卷
- 医疗器械临床评价与风险管理考核试卷
- 2025-2030全球自适应前照明系统(AFLS)行业调研及趋势分析报告
- 2025-2030全球搅拌装置行业调研及趋势分析报告
- 高财课程设计自我鉴定
- 风变编程课程设计团队
- 带式课程设计
- 铁路项目管理课程设计
- 齿轮轴生产课程设计
- 电磁阀培训(精选)课件
- A弥漫大b细胞淋巴瘤护理查房
- 维保移交协议范本
- 初一上学期期末测试卷英语
- 上海沃陆变频器VL600型变频器说明书概要
- 2023年高考物理一轮复习:抛体运动与圆周运动(附答案解析)
- VRV空调技术要求和质量标准
- 第二讲VSP地震勘探
- 干砌石护坡工程施工组织设计方案
- 物业品质提升ppt课件
- -乌兔太阳择日法表
评论
0/150
提交评论