养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

EA自动交易系统如何查询现有持仓情况

时间:2024-11-11 08:44:33

在设计自动交易系统中,查询现有持仓情况,并分类处理是比较关键的一个步骤,今天,我和大家一道,用MQL4做一个这样的例程。

工具/原料

电脑

MQL4语言编辑器

方法/步骤

1、在电脑上打开“MetaEditor4”(MQL4语言编辑器);在上方工具栏选择“文件”,然后“新建”一个文件;

EA自动交易系统如何查询现有持仓情况

EA自动交易系统如何查询现有持仓情况

2、在接下来的“向导界面”中选择“EA模板”;然后给例程起个名字(我起的名字是“example”;接下来使用默认配置;一个例程的模板文件建立了;

EA自动交易系统如何查询现有持仓情况

EA自动交易系统如何查询现有持仓情况

EA自动交易系统如何查询现有持仓情况

EA自动交易系统如何查询现有持仓情况

EA自动交易系统如何查询现有持仓情况

3、在这个例程模板文件中有三个主要函数:OnInit()、OnDeinit()、OnTick();OnInit()函数用于载入EA自动交易程序时进行初始化;OnDeinit()函数用于EA自动交易程序退出时归还占用资源;OnTick()是EA自动交易函数的主体,是运行你的EA自动交易程序的主体;一般情况下,我们不会去动OnInit()函数和OnDeinit()函数;

EA自动交易系统如何查询现有持仓情况

4、为了查询我们现有持仓订撮劝丛食单的情况,我们用到了“循环遍历”的结构;为了体现查询结果,需要设置一些变量和数组,用于记录查询数据;在例程的OnTic娱浣嫁装k()函数中输入以下语句:intcheck_order;stringcheck_symbol[4];intcheck_order_num[4];intcheck_order_type[4];doublecheck_order_lots[4];doublecheck_order_profit[4];

EA自动交易系统如何查询现有持仓情况

5、然后设计我们的“循环遍历”订单的系统功能,这里用到了“for循环”结构和一些M兑恶铼融QL4自带的函数;在定义的变量和数组的后面输入下列语句:for(check_order租涫疼迟=0;check_order<OrdersTotal();check_order++){if(OrderSelect(check_order,SELECT_BY_POS)==true){check_symbol[check_order]=OrderSymbol();check_order_num[check_order]=OrderTicket();check_order_type[check_order]=OrderType();check_order_lots[check_order]=OrderLots();check_order_profit[check_order]=OrderProfit();}elseComment("checkfailed!!!");}

EA自动交易系统如何查询现有持仓情况

6、最后,我们使用comment()函墙绅褡孛数,将检查结果显示在行情图表的左上角,因此,继续在OnTick(像粜杵泳)函数中输入下列语句:Comment(check_symbol[0],"",check_order_num[0],"",check_order_type[0],"",check_order_lots[0],"",check_order_profit[0],"\n",check_symbol[1],"",check_order_num[1],"",check_order_type[1],"",check_order_lots[1],"",check_order_profit[1],"\n",check_symbol[2],"",check_order_num[2],"",check_order_type[2],"",check_order_lots[2],"",check_order_profit[2],"\n",check_symbol[3],"",check_order_num[3],"",check_order_type[3],"",check_order_lots[3],"",check_order_profit[3],"\n");

EA自动交易系统如何查询现有持仓情况

7、完成输入后,点击上方工具栏中的“编译调试”键;怎么样,我们已经能全部查询到我们现在的持仓情况了。

EA自动交易系统如何查询现有持仓情况

EA自动交易系统如何查询现有持仓情况

© 一点知识