[ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5. - página 124
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Boa tarde,
Você poderia me dizer como colocar um marcador na tabela? Por exemplo, a ordem não abriu, mas pelo menos para ver na tabela, em que ponto deveria ter aberto.
Eu gostaria de colocar um marcador em um gráfico.
Assim
Sim, desculpe ter ficado confuso, escrevendo pela primeira vez no fórum. Copiou primeiro, depois decidiu escrever à mão e ficou confuso. Mas o exemplo acima está correto...
MA1>MA2 e MA1<MA3 e MA3<MA4
Confira a seguinte linha
Há algo de estranho aqui.
MA1>MA2 e MA2>MA3 e depois MA1<MA3
Tanto mais que é suficiente para
A questão é esta. Esta não é a primeira vez que me deparo com esta situação:
Se a função traal ou breakeven for chamada em cada tick, por exemplo, aparecerá um erro 1. O que significa, de acordo com a documentação:
ERR_NO_RESULT 1 Нет ошибки, но результат неизвестен
Se não for chamada abertamente na função de início, ou seja, não apenas a função inserida com parâmetros diretamente no início, mas chamá-la em todas as barras, ou seja, não por tiquetaque, então erro - não...
Quero dizer, desta forma:
Por que assim?
E, em geral, como é implementado de forma mais inteligente? Será intensivo em recursos a cada carrapato?
Всем добрый день.
Eu preciso de sua ajuda. Eu não entendo o que está acontecendo.
se (OrderStopLoss() != NormalizeDouble(t6,5))
{
a=10;
}
AcondiçãoOrderStopLoss()= 1.3017 eNormalizeDouble(t6,5)=1.3017 ainda se mantém, ou seja, a=10. Mas não deve ser satisfeita.
Qual pode ser a razão para isso?
A questão é esta. Esta não é a primeira vez que me deparo com esta situação:
Se a função traal ou breakeven for chamada em cada tick, por exemplo, aparecerá um erro 1. O que significa, de acordo com a documentação:
Se não for chamada abertamente na função de início, ou seja, não apenas a função inserida com parâmetros diretamente no início, mas chamá-la em todas as barras, ou seja, não por tiquetaque, então erro - não...
Quero dizer, desta forma:
Por que assim?
E em geral, como é implementado de forma mais inteligente? Será intensivo em recursos a cada carrapato?
A questão é esta. Esta não é a primeira vez que me deparo com esta situação:
Se a função traal ou breakeven for chamada em cada tick, por exemplo, aparecerá um erro 1. O que significa, de acordo com a documentação:
Se não for chamada abertamente na função de início, ou seja, não apenas a função inserida com parâmetros diretamente no início, mas chamá-la em todas as barras, ou seja, não por tiquetaque, então erro - não...
Quero dizer, desta forma:
Por que assim?
E, em geral, como é implementado de forma mais inteligente? Vai ser intensivo em recursos a cada carrapato?
A rede de arrasto tenta mover o SL para o mesmo nível. Precisamos adicionar uma verificação, o nível da rede de arrasto deve ser diferente do SL atual.
A rede de arrasto tenta mover o SL para o mesmo nível. Um controle deve ser adicionado, o nível da rede de arrasto deve ser diferente do SL atual.
Se parada - nova parada (em b.u.) não é zero... então modificamos... Caso contrário, não modificamos. É por isso que não está claro para mim como isto acontece. Afinal, entendo que preciso verificar a igualdade entre as paradas passadas e as novas paradas e já o fiz.Eu tenho um cheque para isso:
Olá! por favor, informe como posso modificar meu pedido inicial e final para 1 T/P, obrigado
gi_304 = CountTrades();
g_price_212 = 0;
double ld_24 = 0;
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
g_price_212 += OrderOpenPrice() * OrderLots();
ld_24 += OrderLots();
}
}
}
if (gi_304 > 0) g_price_212 = NormalizeDouble(g_price_212 / ld_24, Digits);
if (gi_332) {
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_BUY) {
g_price_180 = g_price_212 + TakeProfit2 * Point;
gd_unused_196 = g_price_180;
gd_308 = g_price_212 - Stoploss * Point;
gi_268 = TRUE;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_SELL) {
g_price_180 = g_price_212 - TakeProfit2 * Point;
gd_unused_204 = g_price_180;
gd_308 = g_price_212 + Stoploss * Point;
gi_268 = TRUE;
}
}
}
}
if (gi_332) {
if (gi_268 == TRUE) {
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) OrderModify(OrderTicket(), g_price_212, OrderStopLoss(), g_price_180, 0, Yellow);
gi_332 = FALSE;
}
}
}
return (0);
Olá! por favor, informe como posso modificar meu pedido inicial e final para 1 T/P, obrigado
Edite este código para que ele não pareça um hack