Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 924

 
Nauris Zukas:

Sem a mudança, aAjuda MQl5 não abre.

Tem uma ligação rápida à Internet? Se a ajuda não está a abrir, significa que está a ser descarregada. Havia mensagens no Diário de Bordo sobre o processo de carregamento, agora as mensagens foram removidas.

 

Pode dizer-me, por favor!!!

O que escrever no iCustom após o nome do indicador?

 
TaywinLannister:

Pode dizer-me, por favor!!!

O que devo escrever no iCustom após o nome do indicador?

Pesquisa de exemplos com código: iCustom

 
TaywinLannister:

Pode dizer-me, por favor!!!

O que escrever no iCustom após o nome do indicador?

Ajuda no sítio web.
Документация по MQL5: Технические индикаторы / iCustom
Документация по MQL5: Технические индикаторы / iCustom
  • www.mql5.com
[in] input-параметры пользовательского индикатора, разделенные запятыми. Тип и порядок следования параметров должен соответствовать. Если параметры не указаны, то будут использованы значения по умолчанию. INVALID_HANDLE. Для освобождения памяти компьютера от неиспользуемого больше индикатора служит функция IndicatorRelease(), которой...
 
foreXteller:

Caro Vladimir Karputov!

Obrigado pela ligação!

Vi o vosso artigo recomendado "ALGORITHM DE GERAÇÃO DE TICK NO TESTE TERMINAL DO METATRADOR 5".

É um pouco diferente - não quero analisar valores de tick num intervalo de minutos, e os últimos valores de mercado da SymbolInfoTick() não são tão importantes agora.

Parapoder jogar com MetaTrader 5 nofuturo , quero testar a minha estratégia (o meu robô) com os meus programas em cotações de um minuto de várias moedas simultaneamente, considerando o seuASK, BID, VOLUME e SPREAD, mas não candelabros.

Uma vez que os programas estão escritos no VISUAL C, não posso utilizar o MT para testes.

Os programas são bastante complexos e dificilmente podem ser traduzidos para MQL (planeio utilizar ficheiros DLL no futuro ).

Obrigado pela vossa atenção!

CaroVladimir Karputov!



O artigo que recomendou é o seguinte:

"Algoritmo de geração de carraças

"O Testador de Estratégia do terminal MetaTrader 5 utiliza apenas um modo de simulação de preços nos testes - a geração de carraças com base nos dados históricos existentes sobre os períodos de tempo mínimos utilizando os símbolos utilizados".

Por favor, informe onde obter os"dados históricos existentes sobre prazos mínimos".

Obrigado de antemão!!!


 

Podes dizer-me como apanhar um evento de encerramento de posição?

void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   ...
  }
 
void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   if(trans.deal_type!=DEAL_TYPE_BUY && trans.deal_type!=DEAL_TYPE_SELL)
      return;
   ENUM_DEAL_ENTRY entry_type=(ENUM_DEAL_ENTRY)HistoryDealGetInteger(trans.deal,DEAL_ENTRY);
   if(entry_type==DEAL_ENTRY_IN)
      return;
  }

Será isto correcto? Penso que também deveria ser acrescentada uma verificação de volume.

 
foreXteller:

CaroVladimir Karputov!



No seu artigo recomendado é dado o seguinte:

"Algoritmo de geração de carraças

O Testador de Estratégia do terminal MetaTrader 5 utiliza apenas um modo de simulação de preços nos testes - a geração de carraças com base nos dados históricos existentes sobre os intervalos de um minuto dos símbolos utilizados".

Por favor, informe onde obter os"dados históricos existentes sobre prazos mínimos".

Obrigado de antemão!!!


Tudo já está lá no MetaTrader 5. Desde o início. Imediatamente. Assim que se liga ao servidor de negociação - tem imediatamente acesso a todo o histórico de carraças.

Quando se trabalha em linha, é claro que se trabalha com carraças reais. Enquanto trabalha no testador de estratégia, pode escolher o modo: "Cada tic é baseado em ticks reais" - o método mais preciso, o tic da história real, ou um dos modos de geração de ticks: "Todos os ticks", "OHLC".

 

Por favor, diga-me se existe algum código universal que permita obter o lucro das posições na história? Pelo menos por pos_id. O que funcionaria em todos os mercados.

 
Juer:

Podes dizer-me como apanhar um evento de encerramento de posição?

Para forex utilizo esta opção.

/*********************TradeTransaction function**********************/
void OnTradeTransaction(const MqlTradeTransaction& trans,
                        const MqlTradeRequest& request,
                        const MqlTradeResult& result)
{
  if(trans.type == TRADE_TRANSACTION_DEAL_ADD && trans.symbol == _Symbol)
   {
    /******************** Если открылась позиция********************/
    if(PositionSelectByTicket(trans.position) && PositionGetInteger(POSITION_MAGIC) == magick)
      ifOpenedPosition(trans);
    /******************** Если закрылась позиция********************/
    if(!PositionSelectByTicket(trans.position))
     ifClosedPosition(trans);
   }
}/*******************************************************************/

Ou seja, a posição existe ou não.

Juer:

Por favor, diga-me, existe um código universal que permita obter o lucro das posições na história? Pelo menos por pos_id. Funcionaria em todos os mercados.

Escrever um destes é "uma fatia de bolo". Basta seleccionar os negócios que pertencem à posição e passar por eles para somar o lucro, a troca e a comissão.
Razão: