价格差套利策略(MC版)_第1页
价格差套利策略(MC版)_第2页
价格差套利策略(MC版)_第3页
价格差套利策略(MC版)_第4页
价格差套利策略(MC版)_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

价格差套利策略(MC版)一种基于价格差套利的交易策略,主要包括主价差策略和两个副价差策略。该策略通过计算两个数据集的收盘价差值,并结合历史波动范围来确定市场头寸,进而执行相应的买卖操作。主价差策略:1.输入与变量声明:策略接受两个数据集的收盘价作为输入,并声明了用于存储计算结果和市场头寸的变量。2.计算价差与波动范围:使用30周期的平均值计算两个收盘价的差值(sp),并找出这个差值在过去30周期内的最高值(top)和最低值(bot)。3.确定市场头寸:如果当前价差大于上一周期的最高值,则将mp1设为1,mp2设为-1;如果当前价差小于上一周期的最低值,则将mp1和mp2都设为0。4.存储与输出结果:将mp1和mp2的值存储到数据存储中,并打印当前日期、时间以及这两个变量的值。副价差策略③:1.加载数据存储:仅在首次执行时加载名为“GV01”的数据存储。2.获取市场头寸:从数据存储中获取mp1的值,并检查当前市场头寸是否与mp1的值相符。3.执行交易操作:如果mp1等于1且当前市场头寸不为1,则在下一根柱状图以市价买入;如果mp1等于0且当前市场头寸不为0,则在下一根柱状图以市价卖出。副价差策略④:1.加载数据存储:仅在首次执行时加载名为“GV02”的数据存储。2.获取市场头寸:从数据存储中获取mp2的值,并检查当前市场头寸是否与mp2的值相符。3.执行交易操作:如果mp2等于-1且当前市场头寸不为-1,则在下一根柱状图以市价做空;如果mp2等于0且当前市场头寸不为0,则在下一根柱状图以市价平空仓。特点-基于价差波动:策略的核心在于计算两个数据集的收盘价差值,并结合历史波动范围来确定市场头寸。这种方法有助于捕捉价格差异带来的交易机会。-动态调整头寸:根据价差与历史波动范围的比较结果,策略能够动态地调整市场头寸(买入、卖出、做空或平空仓),从而适应市场变化。-使用数据存储:策略利用数据存储来记录和获取市场头寸信息,确保交易的连续性和一致性。-简单明了的交易规则:策略的交易规则相对简单明了,易于理解和实现。这有助于降低交易成本和提高执行效率。-风险管理:通过设定明确的买卖条件和头寸调整规则,策略有助于控制风险并避免过度交易。本策略,具有动态调整头寸、使用数据存储、简单明了的交易规则和风险管理等特点。这些特点使得该策略在实际应用中具有一定的可行性和有效性。以下是对代码的逐行注释:主价差策略部分:

Input:price1(closeofdata1),price2(closeofdata2);

:定义输入变量price1和price2,分别为数据集data1和data2的收盘价。

var:sp(0),top(0),bot(0),esp(0),mp1(0),mp2(0);

:声明变量sp、top、bot、esp、mp1和mp2,并初始化为0。

sp=Average(price1-price2,30);

:计算price1减去price2的差值的30周期平均值,并赋值给sp。

top=Highest(sp,30);

:找出sp的最近30个周期中的最高值,并赋值给top。

bot=Lowest(sp,30);

:找出sp的最近30个周期中的最低值,并赋值给bot。

ifsp>top[1]thenbegin

:如果当前sp大于上一周期的top,则执行以下代码块。

mp1=1;

:将变量mp1赋值为1。

mp2=-1;

:将变量mp2赋值为-1。

ifsp<bot[1]thenbegin

:如果当前sp小于上一周期的bot,则执行以下代码块。

mp1=0;

:将变量mp1赋值为0。

mp2=0;

:将变量mp2赋值为0。

PutMCDataD("GV01",date+time,"marketposition",mp1);

:将变量mp1的值以日期和时间为索引,存储到名为“GV01”的数据存储中,存储的字段名为“marketposition”。

PutMCDataD("GV02",date+time,"marketposition",mp2);

:将变量mp2的值以日期和时间为索引,存储到名为“GV02”的数据存储中,存储的字段名为“marketposition”。

value1=GetMCDataD("GV01",date+time,"marketposition");

:从名为“GV01”的数据存储中,以日期和时间为索引,获取字段名为“marketposition”的值,并赋值给value1。

value2=GetMCDataD("GV02",date+time,"marketposition");

:从名为“GV02”的数据存储中,以日期和时间为索引,获取字段名为“marketposition”的值,并赋值给value2。

print(date,time,value1,value2);

:打印当前日期、时间以及value1和value2的值。副价差策略③部分:onceLoadMCDB("GV01");

:加载名为“GV01”的数据存储,仅在首次执行时加载。

value1=GetMCDataD("GV01",date+time,"marketposition");

:从名为“GV01”的数据存储中,以日期和时间为索引,获取字段名为“marketposition”的值,并赋值给value1。

ifvalue1=1andmarketposition<>1thenbuynextbaratmarket;

:如果value1等于1且当前市场头寸不为1,则在下一根柱状图以市价买入。

ifvalue1=0andmarketposition<>0thensellnextbaratmarket;

:如果value1等于0且当前市场头寸不为0,则在下一根柱状图以市价卖出。副价差策略④部分:

onceLoadMCDB("GV02");

:加载名为“GV02”的数据存储,仅在首次执行时加载。

value2=GetMCDataD("GV02",date+time,"marketposition");

:从名为“GV02”的数据存储中,以日期和时间为索引,获取字段名为“marketposition”的值,并赋值给value2。

ifvalue2=-1andmarketposition<>-1thensellshortnextbaratmarket;

:如果value2等于-1且当前市场头寸不为-1,则在下一根柱状图以市价做空。

ifvalue2=0andmarketposition<>0thenbuytocovernextbaratmarket;

:如果value2等于0且当前市场头寸不为0,则在下一根柱状图以市价平空仓。主价差策略代码:Input:price1(closeofdata1),price2(closeofdata2);var:sp(0),top(0),bot(0),esp(0),mp1(0),mp2(0);sp=Average(price1-price2,30);top=Highest(sp,30);bot=Lowest(sp,30);ifsp>top[1]thenbeginmp1=1;mp2=-1;end;ifsp<bot[1]thenbeginmp1=0;mp2=0;end;PutMCDataD("GV01",date+time,"marketposition",mp1);PutMCDataD("GV02",date+time,"marketposition",mp2);value1=GetMCDataD("GV01",date+time,"marketposition");value2=GetMCDataD("GV02",date+time,"marketposition");print(date,time,value1,value2);副价差策略③:onceLoadMCDB("GV01");value1=GetMCDataD("GV01",date+time,"marketposition");ifvalue1=1andmarketposition<>1thenbuynextbaratmarket;ifvalue1=0andmarketposition<>0thensellnextbaratmarket;副价差策略④:onceLoadMCDB("GV02");val

温馨提示

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

评论

0/150

提交评论