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

 

   felidae: 
Нет, всё в порядке, просто я дал случайно свою ссылку. Ваша должна быть по идее такая: https://www.mql5.com/ru/users/vik1991/accounting/chooseout

Obrigado pela resposta, há alguma forma de aumentar os ganhos ou apenas esperar que a procura aumente?

 

Aconselha-se como aumentar (recarregar) uma posição num EA baseado no MQL5 Wizard, onde as posições são abertas usando

virtual int LongCondition();
virtual int ShortCondition()
;

Escrevi um robô com base no seguinte artigo

https://www.mql5.com/ru/articles/367"Criar um robô comercial em 6 passos" e funciona bem, mas qualquer tentativa de influenciar o tamanho da posição

(quer aumente ou diminua) através da repetição da geração da condição em , por exemplo

LongCondition();

A posição já aberta permanece inalterada, só pode ser apagada após o accionamento do sl , tp.

Gosto do MQL5 Wizard, pode facilmente e rapidamente "construir" uma EA multi-indicador, alterar o módulo de seguimento de sl sl, alterar o módulo de gestão de dinheiro.

Mas a minha tentativa de escrever uma EA que abre uma posição mínima quando uma tendência é confirmada por um indicador e aumenta (aumenta) a posição quando a tendência é confirmada por outro indicador

deparou-se com o problema anteriormente descrito - uma posição já aberta não muda quando se volta a emitir um sinal para abrir através de, por exemplo,LongCondition();

Создай торговый робот за 6 шагов!
Создай торговый робот за 6 шагов!
  • 2012.06.01
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы не знаете, как устроены торговые классы, и пугаетесь слов "Объектно-ориентированное программирование"? На самом деле вовсе не обязательно всё это знать, чтобы написать свой собственный модуль торговых сигналов - достаточно следовать простым правилам. Всё остальное сделает Мастер MQL5, и вы получите готовый торговый робот!
 
Olá, não consigo descobrir como usar o modo "cálculo matemático", gostaria de ver um exemplo de código, se possível, ou dizer-me onde o posso encontrar
 

Quero deixar apenas ferramentas forex no mercado, o código funciona bem

   for(int i=0;i<=SymbolsTotal(false);i++)
     {
      if(SymbolInfoInteger(SymbolName(i,false),SYMBOL_TRADE_MODE)==SYMBOL_TRADE_MODE_FULL && SymbolInfoInteger(SymbolName(i,false),SYMBOL_TRADE_CALC_MODE)==SYMBOL_CALC_MODE_FOREX && SymbolInfoDouble(SymbolName(i,false),SYMBOL_ASK)-SymbolInfoDouble(SymbolName(i,false),SYMBOL_BID)<50*SymbolInfoDouble(SymbolName(i,false),SYMBOL_POINT))
        {
         SymbolSelect(SymbolName(i,false),true);
        }
      else SymbolSelect(SymbolName(i,false),false);
     }

Mas assim que o lanço no testador, carrega o histórico para o seguinte instrumento; não pode ser carregado. Como posso desactivá-lo para o testador????????

2013.04.04 14:09:21 Core 1 GBOTEURUSD17DEC2012: início da sincronização da história

 
Yuriy2019:

Aconselha-se como aumentar (recarregar) uma posição num EA que se baseia no MQL5 Wizard e onde as posições são abertas através de


Infelizmente, o caso que descreve enquadra-se na categoria de "melhoria" aqui (no Fórum).

Para resolver o problema, é necessário alterar o comportamento do Conselheiro Especialista. Para o fazer:

1. Precisamos de criar uma nova classe (por exemplo, CMyExpert) que herde da classe CExpert.

2. Recarregar método de processamento no mesmo, alterando o seu comportamento.

3. Substituir (manualmente) incluir ficheiro no código fonte do Expert Advisor.

#include <Expert\Expert.mqh>

para

#include <Expert\MyExpert.mqh>

4. Substituir (manualmente) o nome da classe no código fonte do Expert Advisor.

CExpert ExtExpert;

para

CMyExpert ExtExpert;

O exemplo de classe está em anexo. A saída do método se houver uma posição aberta e não houver operações sobre ela é comentada (linha 53).

Não se esqueça de seguir os itens 3 e 4 após cada "regeneração" do Conselheiro Especialista no Feiticeiro.

PS Se tiver alguma dúvida, por favor contacte-me.

Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
  • www.mql5.com
Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert - Документация по MQL5
Arquivos anexados:
MyExpert.mqh  4 kb
 
Olá, pode dizer-me porque não consigo entrar no terminal. Introduzo o servidor, número de conta e palavra-chave, mas a seguinte entrada aparece no registo: 2013.04.05 12:51:20 Rede '68712': ligação a 208.64.66.68:443 perdida
Tentei outro servidor, a mesma coisa, o que estou a fazer mal?
 
uncleVic:

Infelizmente, o caso que descreve insere-se na categoria do que aqui é referido (no Fórum) como "afinação fina".

Para resolver o problema, é necessário alterar o comportamento do perito. Para o fazer:

1. Deve criar uma nova classe (por exemplo, CMyExpert) que herde da classe CExpert.

2. Recarregar método de processamento no mesmo, alterando o seu comportamento.

3. Substituir (manualmente) incluir ficheiro no código fonte do Expert Advisor.

para

4. Substituir (manualmente) o nome da classe no código fonte do Expert Advisor.

para

Um exemplo de classe é anexado. Sair do método se houver uma posição aberta e não houver operações sobre ela é comentada (linha 53).

Lembre-se de seguir os passos 3 e 4 após cada "regeneração" do Conselheiro Especialista no Feiticeiro.

PS Se tiver alguma dúvida, não hesite em contactar-me.

Muito obrigado, tudo funciona! Adiciona o mesmo volume quando a tendência é confirmada por outro indicador.

Agora temos mais uma pergunta - é possível alterar o tamanho do "adicionar"? Por exemplo, o tamanho padrão da posição no módulo de gestão de dinheiro é 0,1, enquanto eu quero adicionar ("adicionar") 0,3 ou 0,35, etc. calculado pelo Expert Advisor.

Como posso passar o tamanho de "recarga" da sub-rotinaLongCondition() para o módulo de comércio?

 
Yuriy2019:

Muito obrigado, está a funcionar! Adiciona o mesmo volume na confirmação de tendências a partir de outro indicador.

Agora tenho mais uma pergunta - é possível mudar o tamanho da "parte"? Por exemplo, o tamanho padrão da posição no módulo de gestão de dinheiro é 0,1, enquanto eu quero adicionar ("adicionar") 0,3 ou 0,35, etc. calculado pelo Expert Advisor.

Como posso passar o tamanho de "recarga" da sub-rotinaLongCondition() para o módulo de comércio?

A classe CExpert tem métodos:

//+------------------------------------------------------------------+
//| Long position open or limit/stop order set                       |
//+------------------------------------------------------------------+
bool CExpert::OpenLong(double price,double sl,double tp)
  {
   if(price==EMPTY_VALUE) return(false);
//--- get lot for open
   double lot=LotOpenLong(price,sl);
//--- check lot for open
   if(lot==0.0) return(false);
//---
   return(m_trade.Buy(lot,price,sl,tp));
  }
//+------------------------------------------------------------------+
//| Short position open or limit/stop order set                      |
//+------------------------------------------------------------------+
bool CExpert::OpenShort(double price,double sl,double tp)
  {
   if(price==EMPTY_VALUE) return(false);
//--- get lot for open
   double lot=LotOpenShort(price,sl);
//--- check lot for open
   if(lot==0.0) return(false);
//---
   return(m_trade.Sell(lot,price,sl,tp));
  }

Sobrecarga na sua classe (semelhante ao Processamento) e alterar o algoritmo de determinação do lote.

Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
  • www.mql5.com
Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert - Документация по MQL5
 
uncleVic:

A classe CExpert tem métodos:

Sobrecarga na sua classe (semelhante ao Processing) e alterar o algoritmo de detecção de lotes.

Obrigado!
 

Há um indicador que diz que funciona ao preço de abertura

código

#property copyright "Ivanov A."
#property link      "aristocrat12@mail.ru"
#property version   "1.00"

#property description "TrendToTrend"
#property indicator_chart_window
#property indicator_buffers 3
#property indicator_plots   3
#property indicator_type1   DRAW_LINE
#property indicator_type2   DRAW_LINE
#property indicator_type3   DRAW_LINE


#property indicator_style1  STYLE_DASH
#property indicator_style2  STYLE_DASH
#property indicator_style3  STYLE_DASH


#property indicator_color1  Blue
#property indicator_color2  Red
#property indicator_color3  Yellow


#property indicator_applied_price PRICE_OPEN
//--- input param

input int InChPeriod = 14; //Line Trend long
input int InChPeriod2 =7; //Line Trend short

int ExChPeriod,ExChPeriod2,rCount;
//---- buffers

double CentreBuffer[],HorisontBuffer[],ShortBuffer[];
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5