mql4编程:巧用订单“魔术编号”进行选择性平仓

阿扎不亚 2024-09-29 02:57:46
最佳回答
1在采用mql4语言编写的自动交易程序中,“发出订单”函数ordersend()的参数中有一个“int magic”参数,习惯上我们直译为“魔术编号”或“魔术编码”,它和“订单号”不一样,不是由系统自动生成的,而是用户可以采取一定的规则,自定义的数字编码。2在日常外汇交易中,我们平仓的类型无非就是“全部平仓”和“选择性平仓”;全部平仓就是“不再持仓”,即不再持有任何仓单,这样的空仓实现起来很简单,在这里就不赘述了;选择性平仓又分为两种:一种是对某一货币对的平仓,这可以通过判断货币对的值做到;另一种是达到盈亏条件的平仓,在这种情况下,如果持有的仓单数量多、货币对种类比较杂,在判断时就比较麻烦了……,这时,如果能巧用“发出订单”函数ordersend()的“int magic”参数(魔术编号),会意想不到地简化操作……3为了举例,我这里用一种简单的”魔术编码“的编码规则:1、编码长度为7位,即每个码都是”*******“的形式;2、编码前3位代表货币对,各不相同,分别为:100 usdchf;200 usdcad;300 eurusd……,(因为是举例,我这里只编3种,大家可以总结更好的方法……o~o);3、编码后4位代表开仓的序号,按开仓时间的先后,从0开始递增;4在电脑上打开mql4语言编辑器(metaeditor 4);点击工作区左上方的“文件”,选择“新建”,然后建立一个“magicdemo"的例程序;5首先,我们在主函数 ontick()中输入下列语句,买入”usdchf“3笔: int c; static int b=1000000; if(b<1000003) { c=ordersend("usdchf",op_buy,0.01,ask,0,0,0,"magicdemo",b,0,yellow); if(c>0) b++; }然后点击上方的”编译运行“键;可以看到,程序为我们买入了3笔”usdchf“订单;6这时,我们可以知道,魔术编号为“1000003”的订单是我们最后成交的,所以,我们可以通过它,对最后一笔订单进行平仓,为此我们在主函数 ontick()中继续输入下列语句: int a; for(a=0;a<orderstotal();a++) { if(orderselect(a,select_by_pos)==true) { if(ordermagicnumber()=b) { orderclose(orderticket(),orderlots(),bid,0,white); } } }然后点击上方的”编译运行“键;可以看到,程序已经把刚才的最后一笔持仓平掉了; 怎么样,这比用什么“遍历”、“比较成交时间”要方便多了吧……^o^…… end 20210311
汇率兑换计算器

类似问答
  • 关于期货编程,如果不用技术指标怎么编程啊,比如4000买进一手,每下跌100元买进一手?
    • 2024-09-29 18:52:53
    • 提问者: 未知
    期货不是这样操作的,下跌100元还买进啊,止损,设好止损,不然你会爆仓的
  • 与银行签订三方协议的编号怎么填
    • 2024-09-29 12:54:16
    • 提问者: 未知
    三方协议是你找到工作了而且还没有毕业才要签订三方协议,相当于一份假合同,等正式毕业后再和公司签订合同。...大学生签三方协议前,须认真查看用人单位的隶属,**机关、...
  • mql4编程中如何引用“自定义函数”?
    • 2024-09-29 16:58:44
    • 提问者: 未知
    1首先在电脑上打开mql4语言编辑器——“metaeditor 4”;在工作区右上方点击“新建”文件按钮,在弹出的“向导界面”中选择“程序库”,然后点击“下一步”;接着为我们的自定义函数取一个文件名,我这里取的是“0001”,然后点击“完成”;2在建立的模板程序中,自定义函数文件只包含“文件头”和“文件体”两部分:“文件头”包含自定义函数文件的文件名,除非你要进行商业开发,否则这个部分一般没有必要...
  • 单片机编程魔法师以后网上会不会有pdf版
    • 2024-09-29 14:48:03
    • 提问者: 未知
    最好的方法是安装adobe公司提供的acrobat软件,这里要注意不是大家常见的acrobatreader,acrobat是用来制作pdf格式文件的,可以将各种电子文档制作成pdf文件。而acrobatreader只能阅读和打印pdf文件,而不能制作pdf文件。acrobat本来可以在adobe网站上下载,但要有帐号。所以我选择了国内的站点下载了acrobat 5.0,这个东东可不小,有108兆。...
  • 单片机编程魔法师以后网上会不会有pdf版
    • 2024-09-29 14:48:07
    • 提问者: 未知
    可能会有不过,如果真的喜欢不如马上买一本纸质的书来看
  • 单片机编程魔法师以后网上会不会有pdf版
    • 2024-09-29 05:21:52
    • 提问者: 未知
    耐心等待吧,应该有的,或许现在就有,只是不知道在哪里,你用各种搜索引擎都搜搜试试。
  • 怎样学习外汇mt4编程之mql4语言学习入门
    • 2024-09-29 15:29:38
    • 提问者: 未知
    京东有卖相关的书籍,市面上大多数也都是入门级的书籍。熟练掌握的话,还的看官方的文件。百度ifx360了解下
  • 使用excel的vba函数进行入门级编程
    • 2024-09-29 23:03:20
    • 提问者: 未知
    1新建一张空白的excel表格。表格格式为xls、xlsx都可以。2要使用vba必须要通过vba工具栏进行操作,因此需要将vba工具栏调出。此操作需要在excel的选项中进行设置勾选。勾选之后点击确定返回主界面可以看到工具栏出现“开发工具”字样,说明vba工具栏已经调取成功。3此处以加法作为示例。先构建一个大体的加法架构。4点击“开发工具”下的“v**ual basic”按钮,在弹出的界面中双击s...
  • 计算机编程主要j**a 选择amd还是intel?
    • 2024-09-29 07:50:30
    • 提问者: 未知
    看到最近4800生产力给力 性价比又高 但是担心amd会出现一些小问题 专业编程的话选择amd会有啥风险嘛?
  • 用订单编号可以在蜂巢快递柜取件吗
    • 2024-09-29 09:00:04
    • 提问者: 未知
    不可以的哟快递柜收到你的包裹后会发提取密码到你的手机上(手机号是快递员存包裹时候输入的)凭密码在快递柜上按提示操作有问题就打柜子上的电话1叁扒零272 零431中立智能...
汇率兑换计算器

热门推荐
热门问答
最新问答
推荐问答
新手帮助
常见问题
房贷计算器-九子财经 | 备案号: 桂ICP备19010581号-1 商务联系 企鹅:2790-680461

特别声明:本网为公益网站,人人都可发布,所有内容为会员自行上传发布",本站不承担任何法律责任,如内容有该作者著作权或违规内容,请联系我们清空删除。