Discussão do artigo "Por onde começar ao criar um robô de negociação para operar na Bolsa de Valores de Moscou MOEX"

 

Novo artigo Por onde começar ao criar um robô de negociação para operar na Bolsa de Valores de Moscou MOEX foi publicado:

Na bolsa de valores de Moscou, muitos traders gostariam de automatizar seus algoritmos de negociação, mas não sabem por onde começar. A linguagem MQL5 não só oferece uma enorme gama de funções de negociação, mas também classes prontas que facilitam os primeiros passos no mundo do trading algorítmico.

Autor: MetaQuotes Software Corp.

 
Adicione o histórico de ticks reais do MOEX para o testador no Metaquotes-Demo.
 
Anton Zverev:
Adicionar o histórico de ticks reais do MOEX para o testador no Metaquotes-Demo.
Engajado
 
O código apresentado nas seções "Obtendo propriedades de um instrumento financeiro e trabalhando com uma conta de negociação" é aplicável à programação de Expert Advisors no MT4? Se não, onde posso ler sobre isso apenas para o MT 4?
 
GKS:
O código apresentado nas seções "Obtendo propriedades de um instrumento financeiro e trabalhando com uma conta de negociação" é aplicável à programação de Expert Advisors no MT4? Se não, onde posso ler sobre isso apenas para o MT 4?
Sim, nessa parte, as linguagens MQL4 e MQL5 são completamente iguais. A única diferença está nas operações de negociação e no trabalho com indicadores.
 
Rashid Umarov:
Sim, nessa parte, as linguagens MQL4 e MQL5 são completamente iguais. A única diferença está nas operações de negociação e no trabalho com indicadores.
Qual é essa diferença?
 
GKS:
Qual é a diferença?
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:
Estamos cuidando disso.
Você tem um prazo?
 

Quase todos os exemplos deste artigo não funcionarão se você selecionar um símbolo com um tamanho de tick diferente de 1 e definir paradas/preços que não sejam múltiplos desse tamanho.

E, para iniciantes, será muito difícil descobrir por que as ordens não são colocadas....

 
Alexey Kozitsyn:

Quase todos os exemplos deste artigo não funcionarão se você selecionar um símbolo com um tamanho de tick diferente de 1 e definir stops/preços que não sejam múltiplos desse tamanho.

E, para iniciantes, será muito difícil entender por que as ordens não são colocadas....

Há muitas perguntas sem resposta aqui, por exemplo,

ninguém pode responder o significado dos intervalos de tempo fornecidos por essa função:

SymbolInfoSessionTrade(...)

Essa função gera o valor dos campos da especificação do contrato "sessão de negociação",

mas como esses intervalos de tempo se correlacionam com o cronograma de negociação na bolsa?

silêncio...

 
Denis Sartakov:

Há muitas perguntas sem resposta aqui, por exemplo,

ninguém sabe responder o significado dos intervalos de tempo fornecidos por essa função:

SymbolInfoSessionTrade(...)

Essa função gera o valor dos campos da especificação do contrato "sessão de negociação",

mas como esses intervalos de tempo se correlacionam com o cronograma de negociação na bolsa?

silêncio...

A função gera exatamente o que é especificado no servidor de negociação na especificação do contrato.

//+------------------------------------------------------------------+
//|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"
//+------------------------------------------------------------------+
//| Função de início do programa de script|
//+------------------------------------------------------------------+
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);
     }
  }
//+------------------------------------------------------------------+