手机版

MQL4预定义变量(一)

阅读 :
外_汇_邦 WaiHuiBang.com

  • 获取最新卖价 Ask
  • 获取最新买价 Bid
  • 获取图表柱数 Bars
  • 获取货币对小数位数 Digits
  • 获取货币对点值 Point

对于每个可执行的MQL4程序,在程序启动时(智能交易、脚本或是自定义指标),诸多的预定义变量可以轻松应对图表中的各种价格状态等价格相关信息。

库可以使用模块中的预定义变量。

为了能安全、快速地访问这些数据,客户端程序会为每个单独启动的程序提供预定义变量的本地副本。这些数据会在每次运行智能交易或自定义指标后自动更新,或调用RefreshRates()函数更新。

获取最新卖价 Ask

double Ask

获取当前货币对的最新卖价。请调用RefreshRates()函数更新数据。

注意:该Ask变量为程序(智能交易、脚本或是自定义指标)运行的图表上所对应货币对(品种)的Ask价格,如果需要获取其他货币对(品种)的Ask价格应使用Marketlnfo()函数。

参见 Marketlnfo()。

示例:

if(iRSI(NULL,0,14,PRICE_CLOSE,0)<25)    {     OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,               "My order #2",3,D'2005.10.10 12:30',Red);     return;    }

获取最新买价 Bid

double Bid

获取当前货币对的最新买价。请调用RefreshRates()函数更新数据。

注意:该Ask变量为程序(智能交易、脚本或是自定义指标)运行的图表上所对应货币对(品种)的Bid价格,如果需要获取其他货币对(品种)的Bid价格应使用Marketlnfo()函数。

参见 Marketlnfo()。

示例:

if(iRSI(NULL,0,14,PRICE_CLOSE,0)>75)    {     OrderSend("EURUSD",OP_SELL,Lots,Bid,3,Ask+StopLoss*Point,Bid-TakeProfit*Point,               "My Order #2",3,D'2005.10.10 12:30',Red);     return(0);    }

获取图表柱数 Bars

int Bars

获取当前图表中柱数。

参见 iBars()。

示例:

  int counter=1;  for(int i=1; i<=Bars; i++)    {     Print(关闭[i-1]);    }

获取货币对小数位数 Digits

int Digits

获取当前货币对汇率的小数位数。如EURUSD当前价格为1.54321,Digits值为5。

参见 MarketInfo()。

示例:

Print("当前货币对小数位数为:"+Digits);

获取货币对点值 Point

double Point

返回图表中当前货币对的点值。

如图表当前货币对为EURUSD,报价为1.54321,因为有5位小数报价,所以点值Point为0.00001也为5位小数;如果报价为1.5432因为是4位小数报价,所以点值Point为0.0001也应该是4位小数。

参见 Marketlnfo()。

示例:

//下面例子下单的时候同时设置100点止盈//如果这里交易的是EURUSD且报价为4位小数,这样是正确的设置了100点止盈int TakeProfit=100;OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point);
//下面例子下单的时候同时设置100点止盈//如果这里交易的是EURUSD且报价为5位小数//因为这时Point是0.00001,要设置100点止盈,Point必须再乘以10int TakeProfit=100;OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point*10);
外_汇_邦 WaiHuiBang.com
本文标题:MQL4预定义变量(一) - MT4平台MQL4编程学习
本文地址:https://www.waihuibang.com/fxschool/autotrading/mql4/49058.html

相关文章

  • MT4编程初级手册(4):自定义函数

    大家可以将自定义函数与数学函数在本质上看作是是一致的,在程序中需要用到的地方直接以函数名来调用。 例如:数学函数fuc(x,y)=5x+6y (x,y为正整数) 写成程序语句就是: double fuc(double x,double y){ double te...

    MQL4编程学习
  • 外汇EA开发过程简介

    外汇EA外汇智能交易软件的开发是一个复杂的过程,需要分析师和程序员的配合,分析师负责总结行情,程序员负责把总结转成代码搭载到软件里,完成后还需要经过无数次复盘测试。 将交易策略转化成外汇EA智能交易软件的程序语言...

    MQL4编程学习
  • 外汇MT4平台操作帮助

      在使用mt4平台进行操作的时候,每个人都会遇到各种不同的问题,今天我们就来对一些常见的问题做一些解释。   1.聊天软件导致自动成交。有人习惯在做单的时候,同时使用聊天软件聊天。但是如果如果在MT4软件的界面...

    MQL4编程学习
  • EA编程教程第九讲 预处理程序

    预处理程序是MQL编译器的一个子系统,通过预处理程序可以使软件的可读性更好,预处理程序运行在程序编译之前。预处理指令以(#)开头。1 定义常量使用#define来定义常量。如:1. #define ABC 1002. #define PI 0.3143. #d...

    MQL4编程学习
  • 打造风靡全球的自动赚钱机器

    EA智能外汇全自动交易系统,就是将您自己或别人的外汇交易策略用特殊的编程语言(MQL)编写成一个电脑软件程序(Expert Advisor), 让电脑按照您事先设定好的条件自动地为您买卖与交易,当然赢亏结果取决于您的自动交易系...

    MQL4编程学习
你可能感兴趣