Dúvida StopLoss e TakeProfit Forex EURUSD

 

Boa noite Pessoal,

Sou novo no Forex e não estou conseguindo coloca Stoploss nem take profit nas minhas ordens....o que estou fazendo errado como devo informar?


//------ Envio de Ordem de Compra   ------//

double stop_loss, take_profit, current_trade_lots, SL, TK;

current_trade_lots = 0.05;
stop_loss = 1.00;             // se ficar 1USD negativo stopa
take_profit = 0.50;          // se ficar 0.50 cents positivo sai 

SL = cSymbol.NomarlizePrice(tick.ask - stop_los); 
TK = cSymbol.NormalizePrice(tick.ask + take_profit);



trade.PositionOpen( _Symbol, ORDER_TYPE_BUY, current_trade_lots, SymbolInfoDouble( _Symbol, SYMBOL_ASK ), SL, TK );



Ele esta acusando erro de INVALID_STOPS  alguém tem alguma ideia ou um exemplo de como devo enviar estas ordens.

Forte abraço a todos !!! E muito obrigado !!!
Princípios gerais - Operações comerciais - Ajuda para o MetaTrader 5
  • www.metatrader5.com
Antes de começar a estudar as funções da plataforma, você deve compreender claramente todos os termos e funç...
 
NandoBueno:

Boa noite Pessoal,

Sou novo no Forex e não estou conseguindo coloca Stoploss nem take profit nas minhas ordens....o que estou fazendo errado como devo informar?


Olá, Qual valor de ASK, BID, SL, TK? Qual valor do STOP LEVEL? 
 
Rogerio Giannetti Torres #:
Olá, Qual valor de ASK, BID, SL, TK? Qual valor do STOP LEVEL? 

Ola Rogerio,

lotes =0.05

gain = 0.0001

loss = 0.0005


Print("Ask...", tick.ask, "Ask - SL...",NormalizeDouble(tick.ask - SL,2), "Ask + TK...",NormalizeDouble(tick.ask + TK,2));

2023.03.27 14:20:52.054 2023.03.14 00:18:00   Ask...1.0725500000000001Ask - SL...1.07Ask + TK...1.07

Print("Ask...", tick.ask, "Ask - SL...",(tick.ask - SL), "Ask + TK...",(tick.ask + TK));

2023.03.27 14:20:52.054 2023.03.14 00:18:00   Ask...1.0725500000000001Ask - SL...1.0720500000000002Ask + TK...1.07265




 
NandoBueno #:

Ola Rogerio,

lotes =0.05

gain = 0.0001

loss = 0.0005

Print("Ask...", tick.ask, "Ask - SL...",NormalizeDouble(tick.ask - SL,2), "Ask + TK...",NormalizeDouble(tick.ask + TK,2));

2023.03.27 14:20:52.054 2023.03.14 00:18:00   Ask...1.0725500000000001Ask - SL...1.07Ask + TK...1.07

Print("Ask...", tick.ask, "Ask - SL...",(tick.ask - SL), "Ask + TK...",(tick.ask + TK));

2023.03.27 14:20:52.054 2023.03.14 00:18:00   Ask...1.0725500000000001Ask - SL...1.0720500000000002Ask + TK...1.07265



Faltou conhecer o STOP LEVEL do ativo, ou seja o stop mínimo (gain/loss) em pontos, veja na definição do EURUSD, certamente o TP/SL não está obedecendo ao mínimo de pontos.

Razão: