智能交易的特性

MetaQuotes | 7 一月, 2009

在MetaTrader 4交易系统中创建并测试智能交易存在以下列举特性。

  • 在开仓之前必须验证账户内是否存在自由保证金。如果账户内的自由保证金不足,开仓交易将失败。您可以测试检验"FreeMargin"值不能够少于1000,因为测试期间一个标准手的的价格为 1000。

    if(AccountFreeMargin() < 1000) return(0); // 没有保证金 - 退出
  • 您可以通过使用预设定数组Time, Open, Low, High, Close, Volume 获取历史数据。因为历史数据的原因,指数的增长是逐渐递减-指数的最后值为0。指数 1 表示倒数一个时间周期,指数2表示倒数两个时间周期,指数3 倒数三个时间周期以此类推。

    // 如果前一个蜡烛柱的Close少于 
    // 前者的Close
    if(Close[1] < Close[2]) return(0);
  • 使用其他的时间间隔甚至是其他货币对可以获得当前历史的数据。得到这些数据首先需要确定一维数组,并且在函数"ArrayCopySeries"的帮助下完成复制工作。对于函数的调用您可以发送较少数量的参量,并且不指明默认参量。

    double eur_close_m1[];
    int number_copied = ArrayCopySeries(eur_close_m1, MODE_CLOSE, 
                                        "EURUSD", PERIOD_M1);