//+------------------------------------------------------------------+//| Enum Lor or Risk |//+------------------------------------------------------------------+enum ENUM_LOT_OR_RISK
{
lots=0, // Constant lot
risk=1, // Risk in percent
};
//+------------------------------------------------------------------+
inputdouble MaximumRisk = 0.01; // Maximum Risk in percentageinputdouble DecreaseFactor = 3; // Descrease factorinput ENUM_LOT_OR_RISK InpLotOrRisk = lots; // Money management: Lot OR Risk
//+------------------------------------------------------------------+//| Calculate optimal lot size |//+------------------------------------------------------------------+double TradeSizeOptimized(void)
{
double price=0.0;
double margin=0.0;
//--- select lot sizeif(!SymbolInfoDouble(_Symbol,SYMBOL_ASK,price))
return(0.0);
if(!OrderCalcMargin(ORDER_TYPE_BUY,_Symbol,1.0,price,margin))
return(0.0);
if(margin<=0.0)
return(0.0);
double lot=0;
//---switch(InpLotOrRisk)
{
case lots:
lot=MaximumRisk;
break;
case risk:
lot=NormalizeDouble(AccountInfoDouble(ACCOUNT_MARGIN_FREE)*MaximumRisk/margin,2);
default:
break;
}
//--- calculate number of losses orders without a breakif(DecreaseFactor>0)
{
//--- select history for accessHistorySelect(0,TimeCurrent());
//---int orders=HistoryDealsTotal(); // total history dealsint losses=0; // number of losses orders without a breakfor(int i=orders-1; i>=0; i--)
{
ulong ticket=HistoryDealGetTicket(i);
if(ticket==0)
{
Print("HistoryDealGetTicket failed, no trade history");
break;
}
//--- check symbolif(HistoryDealGetString(ticket,DEAL_SYMBOL)!=_Symbol)
continue;
//--- check Expert Magic numberif(HistoryDealGetInteger(ticket,DEAL_MAGIC)!=Magic_Number)
continue;
//--- check profitdouble profit=HistoryDealGetDouble(ticket,DEAL_PROFIT);
if(profit>0.0)
break;
if(profit<0.0)
losses++;
}
//---if(losses>1)
lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
}
//--- normalize and check limitsdouble stepvol=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_STEP);
lot=stepvol*NormalizeDouble(lot/stepvol,0);
double minvol=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN);
if(lot<minvol)
lot=minvol;
double maxvol=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX);
if(lot>maxvol)
lot=maxvol;
//--- return trading volumereturn(lot);
}
//+------------------------------------------------------------------+
onde lote - inserirTradeSizeOptimized()
Preciso corrigi-lo no Expert Advisor - caso contrário não está correto lá
1 possibilidade : a linha 1 abrirá a linha 4 a uma determinada distância, a linha 2 abrirá a linha 3 a uma determinada distância.
2ª possibilidade: a linha 7 abrirá uma linha 10 a uma determinada distância, que se move atrás do preço e, quando o preço lhe tocar, um comando desencadeará. a linha 8 abrirá uma linha 9 a uma determinada distância, - a mesma ação que para 7 e 10.
#propriedade versão "1.01"
Há outra opção - alinha 1 abrirá 4 e 9. Alinha 2 abrirá 3 e 10.
Acabou sendo outra possibilidade - alinha 1 abrirá a 4 e a 9. Alinha 2 abrirá a 3 e a 10.
a linha 7 abrirá 10 e 3 . a linha 8 abrirá 9 e 4
para abrir as posições ao contrário e não tocar nos ajustesObjeto: comando :
há uma inversão -
Já comecei o teste - não farei nada até o final do mês, pergunto-me o que vai acontecer. - lote, eu o coloquei em risco - de alguma forma, ele calculará
provavelmente não o suficiente - deveria ter sido mais. agora precisamos esperar novamente, pontos de entrada e definir o TargetProfit = 35000,00;// Lucro Alvo
//+------------------------------------------------------------------+inputstring t0="------ Parameters --------"; // Настройка Экспертаinputstring Template = "ADX"; // Имя шаблона(without '.tpl')inputdatetime HoursFrom = D'1970.01.01'; // Время старта Экспертаinputdatetime HoursTo = D'2030.12.31'; // Время закрытия всех позицийinputdouble TargetProfit = 900000.00; // Целевая прибыльinputuint maxLimits = 1; // Кол-во Позиции Открыть в одну сторонуinputdouble MaximumRisk = 0.01; // Maximum Risk in percentageinputdouble DecreaseFactor = 3; // Descrease factorinput ENUM_LOT_OR_RISK InpLotOrRisk = lots; // Money management: Lot OR Risk
abre posições a partir do pivô indicador linhas de tempo.mq5 da linha R2 - para baixo S2 - para cima
o indicador não pode ser apagado - suas linhas são atualizadas no dia seguinte
provavelmente não o suficiente - deveria ter sido mais. agora precisamos esperar novamente, pontos de entrada e definir o TargetProfit = 35000,00; // Lucro Alvo
abre posições a partir do pivô indicador linhas de tempo.mq5 da linha R2 - para baixo S2 - para cima
o indicador não pode ser apagado - suas linhas são atualizadas no dia seguinte
descobriu como prescrever corretamente o risco
onde lote - inserirTradeSizeOptimized()
Preciso corrigi-lo no Expert Advisor - caso contrário não está correto lá
renomeado - perito completado. todos os erros corrigidos. Título < Movimentação do cavalo ><A movimentação do cavalo
Adicionados ao Expert anterior, dois métodos para a linha Horizontal.
1 possibilidade : a linha 1 abrirá a linha 4 a uma determinada distância, a linha 2 abrirá a linha 3 a uma determinada distância.
2ª possibilidade: a linha 7 abrirá uma linha 10 a uma determinada distância, que se move atrás do preço e, quando o preço lhe tocar, um comando desencadeará. a linha 8 abrirá uma linha 9 a uma determinada distância, - a mesma ação que para 7 e 10.
#propriedade versão "1.01"
Há outra opção - alinha 1 abrirá 4 e 9. Alinha 2 abrirá 3 e 10.
a linha 7 abrirá 10 e 3 . alinha 8 abrirá 9 e4
para abrir as posições no reverso e não tocar nos ajustesObjeto: comando:
há uma inversão -
#propriedade versão "1.01"
Acabou sendo outra possibilidade - alinha 1 abrirá a 4 e a 9. A linha 2 abrirá a 3 e a 10.
a linha 7 abrirá 10 e 3 . a linha 8 abrirá 9 e 4
para abrir as posições ao contrário e não tocar nos ajustesObjeto: comando :
há uma inversão -
Já comecei o teste - não farei nada até o final do mês, pergunto-me o que vai acontecer. - lote, eu o coloquei em risco - de alguma forma, ele calculará
Nada mal! Devagar - mas está ficando melhor
Sim! Ele é um verdadeiro motim.
renomeado - perito completado. todos os erros corrigidos. Título < Movimentação do cavalo ><A movimentação do cavalo
Consultor Especialista Interessante.
entrada definida duplo TargetProfit = 30000,00;// Lucro alvo
provavelmente não o suficiente - deveria ter sido mais. agora precisamos esperar novamente, pontos de entrada e definir o TargetProfit = 35000,00;// Lucro Alvo
abre posições a partir do pivô indicador linhas de tempo.mq5 da linha R2 - para baixo S2 - para cima
o indicador não pode ser apagado - suas linhas são atualizadas no dia seguinte
o indicador está abaixo - agora vou procurar no site o link para o indicadorhttps://www.mql5.com/ru/code/1114
entrada definida duplo TargetProfit = 30000,00; // Lucro alvo
provavelmente não o suficiente - deveria ter sido mais. agora precisamos esperar novamente, pontos de entrada e definir o TargetProfit = 35000,00; // Lucro Alvo
abre posições a partir do pivô indicador linhas de tempo.mq5 da linha R2 - para baixo S2 - para cima
o indicador não pode ser apagado - suas linhas são atualizadas no dia seguinte
o indicador abaixo - agora procurando no site o link para o indicadorhttps://www.mql5.com/ru/code/1114
esta é uma das opções. mas há um milhão de opções
Esqueci de dizer sobre o lote - definido para entrada de risco ENUM_LOT_OR_RISK InpLotOrRisk = lotes;// Gestão do dinheiro: Lote OU Risco
(informações especializadas em .log) que são emitidas advertências https://www.mql5.com/ru/docs/event_handlers/ondeinit#propriedade versão "1.02
encontrou outro caminho para os botões
aqui selecionamos
na abertura da posição - o stop loss é definido imediatamente ( linha horizontal amarela)
ajustado aqui -input double InpStopLoss = 55;// Objeto: Stop Loss, em pips (1.00045-1.00055=1 pips)
desativar o conjunto 0