文章 "为莫斯科交易所开发一个交易机器人从哪里开始呢?"

 

新文章 为莫斯科交易所开发一个交易机器人从哪里开始呢?已发布:

很多莫斯科交易所的交易者想把他们的交易算法自动化,但是他们不知道从何做起,MQL5语言提供了很大范围的交易功能,它还额外提供了方便使用的类,以使用户在算法交易中方便地起步。

在本文中,我们将向您展示如何使用 MQL5 编程进行买入和卖出, 并且我们还将演示如何操作交易账户和交易品种的属性。下图显示了使用止损买入(BUY STOP), 止损卖出(SELL STOP) 以及限价买入(BUY LIMIT), 限价卖出(SELL LIMIT) 的原则, 并指出从从市场深度(Market Depth)中如何下单。

作者:MetaQuotes Software Corp.

[删除]  
在 Metaquotes-Demo 上为测试者添加MOEX 真实点数的历史记录。
 
Anton Zverev:
在 Metaquotes-Demo 上为测试者添加 MOEX 真实跳动历史记录。
参与
 
获取金融工具属性和使用交易账户 "章节中的代码是否适用于 MT4 中的智能交易程序?如果不适用,我在哪里可以读到仅适用于 MT4 的相关信息?
 
GKS:
获取金融工具属性和使用交易账户 "章节中的代码是否适用于 MT4 中的智能交易程序?如果不适用,我在哪里可以读到只适用于 MT4 的代码?
是的,在这一部分,MQL4 和 MQL5 语言完全相同。唯一的区别是在交易操作 和使用指标方面。
 
Rashid Umarov:
是的,在这一部分,MQL4 和 MQL5 语言完全相同。唯一的区别在于交易操作 和使用指标。
这种区别是什么?
 
GKS:
有什么区别?
https://www.mql5.com/ru/forum
Торговая система MetaTrader 5 (MetaQuotes Software Corp.) - MQL4 форум
Торговая система MetaTrader 5 (MetaQuotes Software Corp.) - MQL4 форум
  • www.mql5.com
Торговая система MetaTrader 5 (MetaQuotes Software Corp.) - MQL4 форум
[删除]  
Aytugan Khafizov:
我们正在做。
你有最后期限吗?
[删除]  

如果您选择的符号 的刻度不是 1,并且设置的止损/价格不是该刻度的倍数,那么本文中的几乎所有示例都将不起作用

对于初学者来说,很难弄清为什么订单没有放置....。

 
Alexey Kozitsyn:

如果您选择的符号 的刻度不是 1,并且设置的止损/价格不是该刻度的倍数,那么本文中的几乎所有示例都将不起作用

对于初学者来说,很难理解为什么订单不会被放置....。

这里有很多未解答的问题,例如

没有人能回答这个函数给出的时间间隔的含义:

SymbolInfoSessionTrade(...)

该函数输出合约规格 "交易时段 "的字段值、

但这些时间间隔如何与交易所的交易时间表相关联?

沉默...

 
Denis Sartakov:

这里有很多未解之谜,例如

没有人能回答该函数给出的时间间隔的含义:

SymbolInfoSessionTrade(...)

该函数输出合约规格 "交易时段 "的字段值、

但这些时间间隔如何与交易所的交易时间表相关联?

沉默...

该函数输出的正是交易服务器在合约说明中指定的内容。

//+------------------------------------------------------------------+
//|Check_SymbolInfoSessionTrade.mq5
//| Copyright 2016, MetaQuotes Software Corp.
//|https://www.mql5.com ||
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| 脚本程序启动功能|
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   ENUM_DAY_OF_WEEK weekday=MONDAY;
   PrintDaySession(weekday);
   weekday=FRIDAY;
   PrintDaySession(weekday);

  }
//+------------------------------------------------------------------+
//||
//+------------------------------------------------------------------+
void PrintDaySession(ENUM_DAY_OF_WEEK day)
  {
//---
   int session_index=0;
   datetime from,to;
   //---
   while(SymbolInfoSessionTrade(_Symbol,day,session_index,from,to) && !IsStopped())
     {
      string s_to=TimeToString(to,TIME_MINUTES);
      if(s_to=="00:00") s_to="24:00";

      session_index++;
      Print(EnumToString(day)," Trade session #",session_index,": ",TimeToString(from,TIME_MINUTES)," - ",s_to);
     }
   session_index=0;
   while(SymbolInfoSessionQuote(_Symbol,day,session_index,from,to) && !IsStopped())
     {
      string s_to=TimeToString(to,TIME_MINUTES);
      if(s_to=="00:00") s_to="24:00";

      session_index++;
      Print(EnumToString(day)," Quote session #",session_index,": ",TimeToString(from,TIME_MINUTES)," - ",s_to);
     }
  }
//+------------------------------------------------------------------+