版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网格交易策略(TB版)一种基于价格波动的自动化网格交易策略,旨在通过在不同价格水平上设置买入和卖出订单来捕捉市场波动。策略概述:-网格交易策略通过在不同价格水平上设置买入和卖出订单来捕捉市场波动。-策略的核心逻辑包括价格计算、市场条件判断、买入和卖出操作、以及风险管理。2.核心算法逻辑:-策略基于当前市场的最低点和最高点以及移动平均线来计算价格。-在每个交易日开始时,系统会重置跟踪的高点和低点。-系统会根据当前的市场条件(如时间、价格波动等)来执行买入或卖出操作。3.风险管理:-策略通过设置追踪止损点来管理风险,避免因市场剧烈波动而导致的损失。-当市场条件满足特定条件时,系统会自动执行卖出操作以锁定利润。4.交易执行:-系统会在满足特定条件时自动执行买入或卖出操作。-买入和卖出操作的数量和价格是根据预设的网格大小和当前市场价格来确定的。5.特殊情况处理:-策略还包括对特殊情况(如达到最大网格数量)的处理,以确保交易的安全性和有效性。6.日志记录:-系统会记录重要的交易事件和决策,以便于回溯和分析。-通过注释功能,系统提供了一些全局变量的实际值,帮助用户调试和优化策略。7.每日重置:-在每个交易日结束时,系统会平仓所有未结头寸,并重置相关变量,以便在新一天的数据中继续运行。8.策略特点:-策略通过预设的网格和动态调整机制来实现交易目标。-自动化程度较高,能够有效捕捉市场波动并管理风险。网格交易策略能够在不同的市场环境中自动执行交易,捕捉波动机会,并通过风险管理机制来保护投资者的利益。策略关键参数:初始状态标志(bInitStatues):默认为false初始真实值变量(InitMyRealMp):默认值为0首次网格大小(FirstGrid):设置为30增加网格大小(AddGrid):设置为5总网格数量(TotalGrids):设置为10跟踪止损距离(TrailingGrid):设置为30批次数量(EveryLots):设置为1止损偏移量(Offset):设置为1在收盘时退出最小分钟数(ExitOnCloseMins):设置为14.58核心算法逻辑包括以下操作和判断条件:核心价格计算(MinPoint、MyRealMp等)基于当前的最低点和最高点以及移动平均线进行调整。当前日期与上一个日期不同时,重新设置跟踪的高点和低点。如果时间小于设定的关闭阈值,根据当前的真实价值(MyRealMp),在满足特定条件下执行买入或卖出操作。若MyRealMp大于零且高点后长头进入点的高低差大于等于追踪网格乘以最小点,则卖空一定数量的合约。若MyRealMp小于零且高地与短头进入点的高低差大于等于追踪网格乘以最小点,则买进一定数量的合约。当MyRealMp变为0并且高点减去短头进入点的高低差大于首次网格乘以最小点时,买入一定数量的合约并更新相关变量。其他特殊情况处理,例如当MyRealMp达到最大限制或者接近最大限制时如何操作。时间超过设定关闭阈值时,直接平仓所有未结头寸并将MyRealMp重置为0。策略逻辑当判断条件满足时,即
MyRealMp>
0且高点和低点的差值至少为
TrailingGrid*MinPoint
幅度,并且最近一次的高低价变化不足以证明趋势正在改变时,就会通过Sell()出场锁定利润。卖出指令的具体实现调用Sell()函数时,传入了成交价格
tmpPrice
(等于最高价减去跟踪止损距离),以及要卖出的数量
tmpLots
(绝对值乘以
EveryLots
得到)。这确保了即使市场价格下跌也能按预期价位卖出一定比例的多单。开新仓位的条件只有当
MyRealMp
=0且预测后市看涨的证据足够强(例如,最新高价高于上一个周期的高点),才会在新位置进场建仓。通过限制每个追踪止损格子的最大添加数量(
TotalGrids
)来管理风险,并在达到最大允许追踪止损格子之前逐步加码。Commentary功能它主要用于记录重要的交易事件和决策,以便于回溯和分析交易日志,帮助理解系统的表现和优化方向。策略代码:ParamsBoolbInitStatues(false);NumericInitMyRealMp(0);NumericFirstGrid(30);NumericAddGrid(5);NumericTotalGrids(10);NumericTrailingGrid(30);NumericEveryLots(1);NumericOffSet(1);NumericExitOnCloseMins(14.58);VarsNumericHighAfterLongEntry;NumericLowAfterShortEntry;NumericMyRealMp(0);NumericMinPoint;NumerictmpPrice;NumerictmpLots;BeginMinPoint=Minmove*PriceScale;MyRealMp=GetGlobalVar(0);HighAfterLongEntry=GetGlobalVar(1);LowAfterShortEntry=GetGlobalVar(2);if(BarStatus==0And(MyRealMp==InvalidNumeric||bInitStatues)){MyRealMp=InitMyRealMp;}if(Date<>Date[1]){HighAfterLongEntry=High;LowAfterShortEntry=Low;MyRealMp=0;}Else{HighAfterLongEntry=Max(HighAfterLongEntry,High);LowAfterShortEntry=Min(Low,LowAfterShortEntry);}If(Time<ExitOnCloseMins/100){If(MyRealMp>0AndHighAfterLongEntry-Low>=TrailingGrid*MinPointAnd(High-Low<TrailingGrid*MinPointOr(High-Low>=TrailingGrid*MinPointAndclose<Open))){tmpPrice=Max(HighAfterLongEntry-(TrailingGrid-OffSet)*MinPoint,Low);tmpLots=Abs(MyRealMp*EveryLots);Sell(tmpLots,tmpPrice);MyRealMp=0;LowAfterShortEntry=Low;}ElseIf(MyRealMp<0AndHigh-LowAfterShortEntry>=TrailingGrid*MinPointAnd(High-Low<TrailingGrid*MinPointOr(High-Low>=TrailingGrid*MinPointAndclose>Open))){tmpPrice=Min(LowAfterShortEntry+(TrailingGrid+OffSet)*MinPoint,High);tmpLots=Abs(MyRealMp*EveryLots);BuyToCover(tmpLots,tmpPrice);MyRealMp=0;HighAfterLongEntry=0;}if(MyRealMp==0AndHigh-LowAfterShortEntry>=FirstGrid*MinPoint){tmpPrice=Min(LowAfterShortEntry+(FirstGrid+OffSet)*MinPoint,High);tmpLots=EveryLots;Buy(tmpLots,tmpPrice);MyRealMp=1;HighAfterLongEntry=High;}Elseif(MyRealMp>0AndMyRealMp<TotalGridsAndHigh-LowAfterShortEntry>=(FirstGrid+MyRealMp*AddGrid)*MinPoint){tmpPrice=Min(LowAfterShortEntry+(FirstGrid+MyRealMp*AddGrid+OffSet)*MinPoint,High);tmpLots=EveryLots;Buy(tmpLots,tmpPrice);MyRealMp=MyRealMp+1;}Elseif(MyRealMp==0AndHighAfterLongEntry-Low>=TrailingGrid*MinPoint){tmpPrice=Max(HighAfterLongEntry-(FirstGrid-OffSet)*MinPoint,Low);;tmpLots=EveryLots;SellShort(tmpLots,tmpPrice);MyRealMp=-1;LowAfterShortEntry=Low;}Elseif(MyRealMp<0And-1*MyRealMp<TotalGridsAndHighAfterLongEntry-Low>=(FirstGrid+MyRealMp*AddGrid)*MinPoint){tmpPrice=Max(HighAfterLongEntry-(FirstGrid-Abs(MyRealMp*AddGrid)-OffSet)*MinPoint,High);tmpLots=EveryLots;SellShort(tmpLots,tmpPrice);MyRealMp=MyRealMp-1;}}ElseIf(Time>ExitOnCloseMins/100){If(MyRealMp>0){tmpLots=Abs(MyRealMp*EveryLots);tmpPrice=Close;Sell(tmpLots,tmpPrice);MyRealMp=0;}If(MyRealMp<0){tmpLots=Abs(MyRealMp*EveryLots);tmpPrice=Close;BuyToCover(tmpLots,tmpPrice);MyRealMp=0;}}SetGlobalVar(0,MyRealMp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 铝材现货采购订单协议
- 2026年建筑施工技术综合实训项目教程
- 2026年起重机械安装验收标准与载荷试验流程
- 2026年血液科专科护士培训计划与移植护理
- 风险规避2026年文化传媒产品合作合同协议
- 线上数据标注兼职与合同能源管理结合协议
- 2026年商业道德困境中的决策模型培训
- 茶艺馆茶艺馆装修施工合同
- 股骨转子间骨折患者的心理护理
- 2026年中小学学生学业负担监测与公告制度
- 安全驾驶下车培训课件
- DB31-T1621-2025健康促进医院建设规范-报批稿
- 2026年监考员考务工作培训试题及答案新编
- 2025年生物长沙中考真题及答案
- 牛津树分级阅读绘本课件
- 职业教育考试真题及答案
- 2026年企业出口管制合规体系建设培训课件与体系搭建
- 劳动仲裁典型案件课件
- 化学品泄漏事故应急洗消处理预案
- 2025年小学生诗词大赛题库及答案
- 员工工龄连接协议书
评论
0/150
提交评论