zoukankan      html  css  js  c++  java
  • 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);
     
     
     
     
     
       }

     

  • 相关阅读:
    BZOJ 1003--[ZJOI2006]物流运输(最短路)
    BZOJ 1002--[FJOI2007]轮状病毒(高精度)
    BZOJ 1001--[BeiJing2006]狼抓兔子(最短路&对偶图)
    BZOJ 1719--[Usaco2006 Jan] Roping the Field 麦田巨画(几何&区间dp)
    BZOJ 2821--作诗(分块)
    BZOJ 2724--蒲公英(分块)
    BZOJ 2388--旅行规划(分块&单调栈&二分)
    用python操作Git
    JS常用到的日期函数
    Python3.7使用celery出现from . import async, base SyntaxError: invalid syntax错误
  • 原文地址:https://www.cnblogs.com/aliblogs/p/5493798.html
Copyright © 2011-2022 走看看