Preciso de uma ajuda de outro Programador para meu projeto pessoal Assunto(Money Manager)

Tarea técnica

Caro desenvolvedor, eu estou elaborando um gerenciamento de risco e estou travado em alguns pontos nesse gerenciamento, gostaria de um suporte de um colega programador para me ajudar a desenvolver com a formula que gostaria a logica é a seguinte                                                                                                                                                                                                            double MM_Size()  // martingale / anti-martingale
{
    double SL;
// Assumindo que a lógica para determinar StopSell e StopBuy já foi definida em algum lugar
if (ORDER_TYPE_BUY) {
    SL = ATR2[Shiftatrbuystop] * StopBuy;  // Stop Loss = Average True Range * fixed value
} else {
    SL = ATR4[ShfitStopatrSell] * StopSell;  // Stop Loss = Average True Range * fixed value
}

    double tickvalue = SymbolInfoDouble(Symbol(), SYMBOL_TRADE_TICK_VALUE);
    double ticksize = SymbolInfoDouble(Symbol(), SYMBOL_TRADE_TICK_SIZE);
    double lots = MM_Percent * 1.0 / 100 * AccountInfoDouble(ACCOUNT_BALANCE) / (SL / ticksize * tickvalue);
    double MaxLot = SymbolInfoDouble(Symbol(), SYMBOL_VOLUME_MAX);
    double MinLot = SymbolInfoDouble(Symbol(), SYMBOL_VOLUME_MIN);
    ulong ticket = 0;
   
    if ( ORDER_TYPE_BUY) {
        ticket = LastBuyOrderTicket();
    } else {
        ticket = LastSellOrderTicket();
    }

    if (ticket > 0) {
        double lastDealVolume = HistoryDealGetDouble(ticket, DEAL_VOLUME);
        double lastDealProfit = HistoryDealGetDouble(ticket, DEAL_PROFIT);
        
        if (lastDealProfit > 0 && !MM_Martingale_RestartProfit) {
            lots = lastDealVolume * MM_Martingale_ProfitFactor;
        } else if (lastDealProfit < 0 && !MM_Martingale_RestartLoss) {
            lots = lastDealVolume * MM_Martingale_LossFactor;
        } else if (lastDealProfit == 0) {
            lots = lastDealVolume;
        }
    } else 
   
     if(ConsecutivePL(false, MM_Martingale_RestartLosses))
      lots = MM_Percent * 1.0 / 100 * AccountInfoDouble(ACCOUNT_BALANCE) / (SL / ticksize * tickvalue);
   if(ConsecutivePL(true, MM_Martingale_RestartProfits))
      lots = MM_Percent * 1.0 / 100 * AccountInfoDouble(ACCOUNT_BALANCE) / (SL / ticksize * tickvalue);
   if(lots > MaxLot) lots = MaxLot;
   if(lots < MinLot) lots = MinLot;
   return(lots);
}                                                                                                                                                                                                                                                                                                               //Quero que ela aplique os stops de maneira correta pois me parece que nao esta sendo calculado corretamente por ter 2 tipos de stops, quero que o martingale seja aplicado somente no tipo de ordem ou seja Buy aplica martingale somente Buy, Sell somente Sell... Reiniciar o loop somente se o profit Atual bateu todas as sequencias de loss de determinado Tipo de ordem 


Han respondido

1
Desarrollador 1
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
2
Desarrollador 2
Evaluación
(46)
Proyectos
47
9%
Arbitraje
0
Caducado
0
Libre
3
Desarrollador 3
Evaluación
(11)
Proyectos
17
59%
Arbitraje
2
0% / 100%
Caducado
2
12%
Libre
4
Desarrollador 4
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
Solicitudes similares
Gostaria de selecionar um profissional experiente em negociação XAUUSD, para tratamento de uma estratégia de swing trade. Se você opera esse símbolo, com consistência ou semi consistência, provavelmente será selecionado. Os termos serão apresentados no chat
Tenho um estratégia que analisa 3 tempos gráficos procurando por confluência de preço, no estocastico e no RSI, tbm utilizo 3 médias entre exponencial e simples, essa estratégia vem trazendo resultados o problema é minha falta de disciplina, por isso quero automatizar! Proponho além de um pagamento de até 50 dólares no ato, 30% dos lucros por 1 ano!! Se topo me chama
quero um EA que quando o Double Exponencial Moving Average cruzar o Adaptative moving Average faz se uma operação e se enserra uma operação quando cruza de novo ai se faz uma troca de mão com traling stop obs :o robo tem que ser programada para poder ser usado em tanto nas corretoras forex quanto na corretora DERIV
Preciso entender o porque meu EA parou de funcionar, talvez possa ter expirado, porém no momento estou sem o código-fonte para desbloquear o acesso. Portanto, preciso de um profissional que possa fazer engenharia reversa ou encontrar uma maneira de abrir este EA e fazê-lo funcionar normalmente
NYR Nasdaq Expert São dois EAs, eles são clones, o que muda é onde um faz compra, o outro faz venda, e vice-versa. Só isso. Na verdade, o programador poderá criar apenas um EA e colocar um selecionador no início que permite mudar do 1 para o 2, desde que funcione adequadamente do jeito que eu preciso. Assim, antes de todas as demais opções, colocar "Tipo de entrada" e dentro dele as opções: "A favor do rompimento" e

Información sobre el proyecto

Presupuesto
33+ USD
Para el ejecutor
29.7 USD