//+------------------------------------------------------------------+

//| Grid1.1.mq4 |

//| Copy* 顺势加码 2006 |

//| |

//+------------------------------------------------------------------+

#property copy* "Copy* 顺势加码 2006"

#property link "bonnyshi@gmail.com"

#include

extern double GridStep=50; //格幅

extern double GridLength=100; //格长

double PivotPr, Multiple, i, Lots=0.1, STOPLEVEL, TP, ST;

string Text="Grid";

int Magic, j, BuyCount, SellCount, DTS, Ticket;

//+------------------------------------------------------------------+

int init() //初始化部分将定义参数赋值: 每次在start里面都可能被赋值一次,消耗时间

if (DTS==4) DTS=2;

else DTS=0;

Magic =105;

GridStep =GridStep*Point;

GridLength =GridLength*Point;

STOPLEVEL =MarketInfo(Symbol(),MODE_STOPLEVEL)*Point;

return(0);

//+------------------------------------------------------------------+

int start()

{

Multiple =NormalizeDouble((Bid-NormalizeDouble(Bid,DTS))/GridStep, 0); // 评rint 检查这地方出值为0

PivotPr =NormalizeDouble(Bid,DTS) +GridStep*Multiple;

// 下网格布网

for(i=PivotPr; i>=PivotPr-GridLength; i=i-GridStep)

{

BuyCount=0; SellCount=0;

for(j=0; j

{

if(OrderSelect(j,SELECT_BY_POS)==false) return(0);

if(OrderMagicNumber()==Magic && NormalizeDouble(OrderOpenPr(),DTS)==NormalizeDouble(i,DTS) )

{

if(OrderType()==OP_BUY || OrderType()==OP_BUYLIMIT ) BuyCount++;

if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP ) SellCount++;

}

}

if(BuyCount==0)

{

TP =i+GridStep; ST=0;

if(Ask-i>=STOPLEVEL)

{

Ticket =OrderSend(Symbol(),OP_BUYLIMIT,Lots,i,0,ST,TP,"Grid - BuyLimit",Magic,0,0);

if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid - BuyLimit=",i," 开仓成功");

else Alert( Symbol(),"Grid - BuyLimit=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

if(Ask==i)

{

Ticket=OrderSend(Symbol(),OP_BUY,Lots,i,0,ST,TP,"Grid - Buy",Magic,0,0);

if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid - Buy=",i," 开仓成功");

else Alert( Symbol(),"Grid - Buy=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

}

if(SellCount==0)

{

TP=i-GridStep;ST=0;

if(Bid-i>=STOPLEVEL)

{

Ticket=OrderSend(Symbol(),OP_SELLSTOP,Lots,i,0,ST,TP,"Grid - SellStop",Magic,0,0);

if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid - SellStop=",i," 开仓成功");

else Alert( Symbol(),"Grid - SellStop=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

if(Bid==i)

{

Ticket=OrderSend(Symbol(),OP_SELL,Lots,i,0,ST,TP,"Grid - Sell",Magic,0,0);

if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid - BuyLimit=",i," 开仓成功");

else Alert( Symbol(),"Grid - BuyLimit=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

}

}

// 上网格布网

for(i=PivotPr+GridStep;i<=PivotPr+GridLength;i=i+GridStep)

{

BuyCount=0;SellCount=0;

for(j=0;j

{

if(OrderSelect(j,SELECT_BY_POS)==false) return(0);

if(OrderMagicNumber()==Magic && NormalizeDouble(OrderOpenPrice(),DTS)==NormalizeDouble(i,DTS) )

{

if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP) BuyCount++;

if(OrderType()==OP_SELL || OrderType()==OP_SELLLIMIT) SellCount++;

}

}

if(BuyCount==0)

{

TP=i+GridStep;ST=0;

if(i-Ask>=STOPLEVEL)

{Ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,i,0,ST,TP,"Grid + BuyStop",Magic,0,0);

if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid + BuyStop=",i," 开仓成功");

else Alert( Symbol(),"Grid + BuyStop=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

if(i==Ask)

{

Ticket=OrderSend(Symbol(),OP_BUY,Lots,i,0,ST,TP,"Grid + Buy",Magic,0,0);

if(Ticket>0) Alert(Symbol()," ",Ticket,"Grid + Buy=",i," 开仓成功");

else Alert( Symbol(),"Grid + Buy=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

}

if(SellCount==0)

{

TP=i-GridStep;ST=0;

if(i-Bid>=STOPLEVEL)

{

Ticket=OrderSend(Symbol(),OP_SELLLIMIT,Lots,i,0,ST,TP,"Grid + SellLimit",Magic,0,0);

if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid + SellLimit=",i," 开仓成功");

else Alert( Symbol(),"Grid + SellLimit=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

if(i==Bid)

{

Ticket=OrderSend(Symbol(),OP_SELL,Lots,i,0,ST,TP,"Grid + Sell",Magic,0,0);

if(Ticket>0) Alert(Symbol()," ",Ticket,"Grid + Sell=",i," 开仓成功");

else Alert( Symbol(),"Grid + Sell=",i," 开仓失败:",ErrorDescription(GetLastError()));

Sleep(10000);

}

}

}

//----

return(0);

}

//+------------------------------------------------------------------+

python 网格交易源码_网格交易策略源码(MT4.0源码)相关推荐

  1. python 网格交易源码_网格交易策略(难度:中级)

    什么是网格交易策略 网格交易又名渔网交易,就是跌买涨卖.它适合震荡市,震荡市就是行情价围着一个数字上下浮动的,这个数字就是设置的价格中轴线. 设定中枢价格后,对投资标的进行机械式操作,下跌时,进行分档 ...

  2. python 网格交易源码_网格交易法策略源码

    网格交易法的源码 //+------------------------------------------------------------------+ //| Grid1.1.mq4 | // ...

  3. python窗口动态实时显示时间_量化交易实时动态监视系统(纯Python,只需要浏览器就能用)-直接GitHub开源可下载...

    APP demo(还在优化):http://silverzy.com/tradings/ Github:https://github.com/jianwang0212/Dash_eth(如果可以sta ...

  4. python历史性分布计算代码_量化交易中,如何使用Python计算「筹码分布」指标【附代码】 [量化小讲堂-64]...

    引言: 邢不行的系列帖子"量化小讲堂",通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助. [历史文章汇总] 请点击此处 这是邢不行第  64 ...

  5. android 快传 源码_最新安卓仿茄子快传APP源码包括服务端源码Android开发快传类项目源码全套...

    适使用范围:  安卓APP茄子快传源码 Android项目源码相似茄子快传的快传项目包括服务端 运行环境:  Android app 源码详细: 本项目是一个基于安卓的相似茄子快传的项目源码,包括安卓 ...

  6. python 网格交易源码_网格交易策略[tb源码]

    Params Numeric InitMP(0);        // 初始仓位,+-表示多空 Numeric FirstGrid(3);        // 第一格的间距,点数 Numeric To ...

  7. python网格交易法详解_网格交易法(期货)

    1. 原理 什么是网格交易法? 网格交易法是一种利用行情震荡进行获利的策略.在标的价格不断震荡的过程中,对标的价格绘制网格,在市场价格触碰到某个网格线时进行加减仓操作尽可能获利. 网格交易法属于左侧交 ...

  8. python工资管理系统课程设计_高校教师绩效工资管理系统设计开发,源码下载

    大家好,我是全微毕设团队的创始人,本团队擅长JAVA(SSM,SSH,SPRINGBOOT).PYTHON.PHP.C#.安卓等多项技术. 今天将为大家分析一个高校教师绩效工资管理系统(高校教师绩效工 ...

  9. 基于python的股票程序化交易软件_程序化交易(三):基于 Python 的股票程序化交易/量化框架 easyquant...

    续前贴,在前面的基础上弄了一个简单的程序化交易框架 easyquant 开源在 github 上,欢迎大家 star & fork.下面是简单介绍: 交易模块 easytrader 支持 华泰 ...

最新文章

  1. spark代码中添加logger_Spark的日志配置
  2. java第十三章总结
  3. ubuntu php 中文乱码,Ubuntu环境下,图例中文乱码怎么办?
  4. 桶排序/Bucket Sort
  5. 使用RMAN备份数据库和归档日志合二为一
  6. 整理: JAVA错误处理集锦
  7. Sitecore 8.2 页面架构设计:模板与组件
  8. [Google Guava]学习--新集合类型BiMap
  9. Kettle入门操作——输入流(表输入、excel)详细
  10. java中的时间片概念_java中常用的时间处理类TimeUtil
  11. win10-linux双系统安装教程
  12. 计算机WIN7动态硬盘分区,win7电脑硬盘分区的具体操作方法
  13. 华为服务器的系统,华为服务器系统
  14. 学完python可以从事哪些工作?
  15. 机器人URDF文件和xacro文件介绍
  16. Neuroink的8个疯狂梦想
  17. vue重复访问同一路由报错
  18. nyoj 541 最强DE 战斗力(大数问题)
  19. Bootstrap Table 中文文档(完整翻译版)
  20. html编辑doc,HTMLDOC

热门文章

  1. Backbone入门指南(二):依赖库Underscore
  2. 视频剪辑调色软件:达芬奇18正式版 for mac
  3. 信息安全学习4. 重放攻击的概念与防范
  4. NPDP知识推送-第三章新产品开发流程管理(2)
  5. 综述 | 358 篇论文, 最新知识图谱KG综述
  6. 华为模拟器eNSP安装步骤
  7. 电快速脉冲群EFT(概念)
  8. 我的第一个JavaScript小游戏--战舰世界
  9. ubuntu配置jre8
  10. jquery中添加属性和删除属性--------------------