MT5基础知识
获取账户相关信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
printf ( "ACCOUNT_BALANCE = %G" ,AccountInfoDouble(ACCOUNT_BALANCE)); printf ( "ACCOUNT_CREDIT = %G" ,AccountInfoDouble(ACCOUNT_CREDIT)); printf ( "ACCOUNT_PROFIT = %G" ,AccountInfoDouble(ACCOUNT_PROFIT)); printf ( "ACCOUNT_EQUITY = %G" ,AccountInfoDouble(ACCOUNT_EQUITY)); printf ( "ACCOUNT_MARGIN = %G" ,AccountInfoDouble(ACCOUNT_MARGIN)); printf ( "ACCOUNT_FREEMARGIN = %G" ,AccountInfoDouble(ACCOUNT_FREEMARGIN)); printf ( "ACCOUNT_MARGIN_LEVEL = %G" ,AccountInfoDouble(ACCOUNT_MARGIN_LEVEL)); printf ( "ACCOUNT_MARGIN_SO_CALL = %G" ,AccountInfoDouble(ACCOUNT_MARGIN_SO_CALL)); printf ( "ACCOUNT_MARGIN_SO_SO = %G" ,AccountInfoDouble(ACCOUNT_MARGIN_SO_SO)); printf ( "ACCOUNT_LOGIN = %d" ,AccountInfoInteger(ACCOUNT_LOGIN)); printf ( "ACCOUNT_LEVERAGE = %d" ,AccountInfoInteger(ACCOUNT_LEVERAGE)); bool thisAccountTradeAllowed=AccountInfoInteger(ACCOUNT_TRADE_ALLOWED); bool EATradeAllowed=AccountInfoInteger(ACCOUNT_TRADE_EXPERT); ENUM_ACCOUNT_TRADE_MODE tradeMode=(ENUM_ACCOUNT_TRADE_MODE)AccountInfoInteger(ACCOUNT_TRADE_MODE); ENUM_ACCOUNT_STOPOUT_MODE stopOutMode=(ENUM_ACCOUNT_STOPOUT_MODE)AccountInfoInteger(ACCOUNT_MARGIN_SO_MODE); Print( "The name of the broker = " ,AccountInfoString(ACCOUNT_COMPANY)); Print( "Deposit currency = " ,AccountInfoString(ACCOUNT_CURRENCY)); Print( "Client name = " ,AccountInfoString(ACCOUNT_NAME)); Print( "The name of the trade server = " ,AccountInfoString(ACCOUNT_SERVER)); |
Bar 向前 的值 可以通过 Copytime 什么的 进行 操作
获取 iMA的 值
1
2
3
|
double aaa[]; int handle = iMA(Symbol(),PERIOD_H1,60,0,MODE_SMA,PRICE_CLOSE); CopyBuffer(handle,0,0,2,aaa); |
开仓
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
if (!PositionSelect(_Symbol)) { MqlTradeRequest request={0}; request.action=TRADE_ACTION_DEAL; // 设置挂单 request.magic=1000; // ORDER_MAGIC request.symbol=_Symbol; // 交易品种 request.volume=0.1; // 0.1为单位的交易量 request.sl=1.09; // 没有指定止损价位 request.tp=1.1; // 没有指定盈利价位 //--- 形成订单类型 request.type=ORDER_TYPE_BUY; // 订单类型 //--- 形成挂单价格 request.price=SymbolInfoDouble(_Symbol,SYMBOL_ASK); // 开盘价 Print(SYMBOL_ASK); //--- 发送交易请求 MqlTradeResult result={0}; OrderSend(request,result); Print(__FUNCTION__, ": " ,result.comment, " reply code " ,result.retcode); } |
修改止损止盈
1
2
3
4
5
6
7
8
9
10
11
12
|
if (PositionSelect(_Symbol)) { MqlTradeRequest request={0}; request.action=TRADE_ACTION_SLTP; // 设置挂单 request.sl=1.08; // 没有指定止损价位 request.tp=1.11; // 没有指定盈利价位 request.symbol = _Symbol ; MqlTradeResult result={0}; OrderSend(request,result); Print(__FUNCTION__, ": " ,result.comment, " reply code " ,result.retcode); } |
平仓
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
if (PositionSelect(_Symbol)) { MqlTradeRequest request={0}; request.action=TRADE_ACTION_DEAL; // 设置挂单 request.type =ORDER_TYPE_SELL; request.volume =PositionGetDouble(POSITION_VOLUME); request.price=SymbolInfoDouble(_Symbol,SYMBOL_BID); request.symbol = _Symbol ; MqlTradeResult result={0}; OrderSend(request,result); Print(__FUNCTION__, ": " ,result.comment, " reply code " ,result.retcode); } |
挂单
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
if (!PositionSelect(_Symbol)) { MqlTradeRequest request={0}; request.action=TRADE_ACTION_PENDING; // 设置挂单 request.type =ORDER_TYPE_BUY_LIMIT; request.volume =0.1; request.price=1.09; request.sl = 1.08; request.tp = 1.1; request.symbol = _Symbol ; MqlTradeResult result={0}; OrderSend(request,result); Print(__FUNCTION__, ": " ,result.comment, " reply code " ,result.retcode); } |
修改挂单
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
for ( int i=0;i<OrdersTotal();i++) { long tic = OrderGetTicket(i); MqlTradeRequest request={0}; request.action=TRADE_ACTION_MODIFY; // 设置挂单 request.order = tic ; request.price=1.091; //止损 必须加 ,如果不加 则给你全部归零 request.sl = 1.081; request.tp = 1.11; MqlTradeResult result={0}; OrderSend(request,result); Print(__FUNCTION__, ": " ,result.comment, " reply code " ,result.retcode); } |
移除挂单
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
for ( int i=0;i<OrdersTotal();i++) { long tic = OrderGetTicket(i); MqlTradeRequest request={0}; request.action=TRADE_ACTION_REMOVE; // 设置挂单 request.order = tic ; request.price=1.091; //止损 必须加 ,如果不加 则给你全部归零 request.sl = 1.081; request.tp = 1.11; MqlTradeResult result={0}; OrderSend(request,result); Print(__FUNCTION__, ": " ,result.comment, " reply code " ,result.retcode); }
|
MT5基础知识的更多相关文章
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- 把Excel工作簿的每个工作表提取出来保存为新工作簿
平台:MS office 2010 任务:有个excel工作簿,其中有上百个工作表,要求把每一个工作表全部保存为新工作簿,如果一个一个复制出来太傻了,可以用excel自带的VB解决. 方法:打开工作簿 ...
- 重点+超详细:ajax和json及案例
不用jQuery的ajax流程 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "ht ...
- NewtonJson中转义的斜杠\和多余的引号处理
使用newtonjson序列化的json串正常的,但通过网络传输后,会再包装一层引号和对原有定义引号的转义,最后结果就变成这种数据: “\"{\\\"State\":fa ...
- 查看源码利器之sublime text 3 配置 Ctags 插件
最近在看源码的时候发现sublime text 3是很给力的一款软件,小巧精致,这里着重讲解一下Ctags协助编译和跟踪函数 一.安装Package Control (如果Preferences &g ...
- win32api大全
win32api大全 http://files.cnblogs.com/files/landv/Win32API%E5%A4%A7%E5%85%A8.zip
- display: inline-block兼容性写法
display:inline-block;*display:inline;*zoom:1;
- 用block解决nstimer循环引用
大多数开发者可能都会这样来实现定时器.创建定时器的时候,由于目标对象是self,所以要保留此实例.然而,因为定时器是用实例变量存放的,所以实例也保留了定时器,这就造成了循环引用.除非调用stop方法, ...
- Ubuntu彻底删除mysql
删除 mysql sudo apt-get autoremove --purge mysql-server-5.0sudo apt-get remove mysql-serversudo apt-ge ...
- agnentX学习存在疑问?
在RFC2741中这样定义: 4.3中有如下段落: A general architectural division of labor between master agent and subage ...
- Matlab - 矩阵元素引用
>> A = [ ; ; ] A = 1. 选择第m行n列的元素 >> A(,) ans = 2. 选择第i列所有元素 >> A(:,) ans = 3. 选择第j ...