Termos de Referência
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
Respondido
1
Classificação
Projetos
0
0%
Arbitragem
1
0%
/
100%
Expirado
0
Livre
2
Classificação
Projetos
50
8%
Arbitragem
0
Expirado
0
Livre
3
Classificação
Projetos
17
59%
Arbitragem
2
0%
/
100%
Expirado
2
12%
Livre
4
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
Pedidos semelhantes
Preciso de um Expert Advisor para o MetaTrader 5 que opere a abertura do mercado na B3. Monitorização: O robô deve ler o preço teórico do leilão do contrato Cheio e do Mini simultaneamente. Cálculo de Spread: Deve calcular a distorção (ex: WDO vs DOL). Execução: Se a distorção for > X pontos, deve enviar ordem a mercado no ativo defasado exatamente no milissegundo da abertura. Volume Dinâmico: Escalabilidade de lotes
We are looking for a highly qualified, skilled, and experienced MT5 developer (ideally with experience in the financial sector and financial markets) who is capable of creating and implementing a custom-built, professional integration and analysis framework. This framework should include order flow alerts, broker anomalies (including hunting indicators, etc.), the integration of external signals, an audio alert
Estou procurando um trader com conhecimento em MetaTrader 5 para acompanhar e monitorar operações de trading durante o pregão. O profissional será responsável por acompanhar estratégias em execução, monitorar operações abertas e auxiliar na execução de operações no mercado futuro. Responsabilidades: Monitorar operações abertas durante o pregão Acompanhar execução das ordens e replicações no sistema Auxiliar no
Informações sobre o projeto
Orçamento
33+ USD