套利交易策略(TB版)_第1页
套利交易策略(TB版)_第2页
套利交易策略(TB版)_第3页
套利交易策略(TB版)_第4页
套利交易策略(TB版)_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

套利策略(TB版)策略概述:本套利策略基于价格变化与预设阈值来判断交易行为和数量。通过计算两个数据序列(Data0和Data1)的收盘价和开盘价差值,根据这些差值与设定的上涨阈值(uprice1,uprice2,uprice3)和下跌阈值(dprice1,dprice2,dprice3)进行比较,来执行相应的买入或卖空操作。参数设置:上涨价格阈值:uprice1(700),uprice2(750),uprice3(800)下跌价格阈值:dprice1(-700),dprice2(-750),dprice3(-800)交易数量:lots1(1),lots2(2),lots3(4)变量定义:M:当前Data0的收盘价与前一个Data1收盘价的差值M1:当前Data0的开盘价与前一个Data1开盘价的差值(策略中未直接使用)布尔型变量:用于判断价格是否超过或低于各阈值(Upline,Upline1,Upline2,downline,downline1,downline2)主要逻辑:计算差值:首先计算M和M1(但M1未在策略中直接使用)。阈值判断:使用CrossOver函数判断M是否超过预设的上涨阈值,以及使用CrossUnder函数判断M是否低于预设的下跌阈值。交易执行:当M超过上涨阈值且当前Data0的仓位不为空仓时,根据超过的阈值级别(upline,upline1,upline2)执行卖空Data0并买入Data1的操作,交易数量根据阈值级别递增(lots1,lots2,lots3)。当M低于下跌阈值且当前Data0的仓位不为多仓时,根据低于的阈值级别(downline,downline1,downline2)执行买入Data0并卖空Data1的操作,交易数量同样根据阈值级别递增。策略特点:基于价格变动的套利:根据两个数据序列的价格差值变化来捕捉套利机会。动态调整仓位:根据价格超过或低于不同阈值的程度,动态调整交易的仓位大小。灵活的交易逻辑:同时考虑了当前的市场仓位和价格阈值的交叉情况,以制定合适的交易策略。注意事项:实际应用中需根据市场情况调整阈值和交易数量。本策略未考虑交易成本、滑点、市场影响等因素,实际交易中需综合考虑。策略中使用的Data0和Data1应代表实际交易中可操作的资产或合约。策略信号代码:ParamsNumericuprice1(700);Numericuprice2(750);Numericuprice3(800);Numericdprice1(-700);Numericdprice2(-750);Numericdprice3(-800);Numericlots1(1);Numericlots2(2);Numericlots3(4);VarsNumericNO1(0);NumericM;NumericM1;NumericSeriesbuyprice;NumericSeriessellprice;BoolSeriesUpline;BoolSeriesUpline1;BoolSeriesUpline2;BoolSeriesdownline;BoolSeriesdownline1;BoolSeriesdownline2;BeginM=Data0.close-Data1.close;M1=(Data0.open)-(Data1.open);//PlotNumeric("M",M);//PlotNumeric("M1",M1);upline=CrossOver(M,uprice1);upline1=CrossOver(M,uprice2);upline2=CrossOver(M,uprice3);downline=CrossUnder(M,dprice1);downline1=CrossUnder(M,dprice2);downline2=CrossUnder(M,dprice3);//M>700的时候开仓加仓If(data0.MarketPosition!=-1and(upline==true)){data0.SellShort(lots1,data0.close);data1.buy(lots1,data0.close);}If(data0.MarketPosition==-1and(upline1==true)){data0.SellShort(lots2,data0.close);data1.buy(lots2,data1.close);}If(data0.MarketPosition==-1and(upline2==true)){data0.SellShort(lots3,data0.close);data1.buy(lots3,data1.close);}//M<700的时候开仓加仓If(data0.MarketPosition!=1and(downline==true)){data0.buy(lots1,data0.close);data1.SellShort(lots1,data1.close);}If(data0.MarketPosition==1and(downline1==true)){data0.buy(lots2,data0.close);data1.SellShort(lots2,data1.close);}If(data0.MarketPosition==1and(downline2==true)){data0.buy(lots3,data0.close);data1.SellShort(lots3,data1.close);}End策略代码注解:参数部分:-`uprice1`、`uprice2`、`uprice3`:可能是用于判断上涨的价格阈值。-`dprice1`、`dprice2`、`dprice3`:可能是用于判断下跌的价格阈值。-`lots1`、`lots2`、`lots3`:不同情况下的交易数量。变量部分:-`NO1`:初始化为0的数值变量。-`M`:可能是当前收盘价与前一个收盘价的差值。-`M1`:可能是当前开盘价与前一个开盘价的差值。-`buyprice`、`sellprice`:可能用于存储买入和卖出的价格。-`Upline`、`Upline1`、`Upline2`:用于判断是否超过不同上涨阈值的布尔型变量。-`downline`、`downline1`、`downline2`:用于判断是否低于不同下跌阈值的布尔型变量。主要逻辑部分:-计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论