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
Olá a todos...
como posso definir um código de pedido no metaeditor,
eu uso conta demo... é possível definir uma ordem em conta demo
eu tentei, mas falhou
Parâmetro BE
Olá.
Preciso de ajuda para adicionar o parâmetro BE stop neste EA, por favor. Este EA eu o recebi da primeira página deste tópico que se baseia no sistema Trendmanager.
Agradeço antecipadamente.
Cha.
e-trendmanager.mq4
Arquivo MQ4, por favor
Agradecemos antecipadamente.
Cha.#propriedade copyright "Copyright ฉ 2006, www.easyforexsignals.com"
#link da propriedade "paul@easyforexsignals.com"
#define LONGCOLOR DodgerBlue
#define SHORTCOLOR OrangeRed
#define MAGICTM 20070610
TMlots duplos externos=0,1;
externo int MoveStopAmount = 20;
externo int MoveStopAfterProfitof = 55;
nível de minadx externo int = 20;
duplo minSolarWind externo = 0,25;
external double minJuice = 0,001;
Exterior int StopLoss=50,
Slippage = 3,
TakeProfit=120;
data/hora LastTMSignalTime;
Exterior int MinTimeBetweenSignals = 60;
int init(){
retorno(0);
}
int deinit(){
retorno(0);
}
int start()
{
int res= 0;
if(Bars<100 || IsTradeAllowed()==falso) retorna;
CheckTrendManager(); // verificar sistema de gerenciamento de tendências
CheckForTMClose(); // verificar se há fechamentos neste sistema
CheckForStopMove(); // mover paradas em qualquer comércio aberto
}
verificação nula para StopMove() {
for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==falso) break;
if(OrderMagicNumber()!=MAGICTM || OrderSymbol()!=Symbol()) continua;
if(OrderType()==OP_BUY)
{
// mover-se para cima para travar o lucro
if ((OrderOpenPrice()-Ask) >= (MoveStopAfterProfitof * Point())) {
OrderModify(OrderTicket(),0,OrderOpenPrice()+(MoveStopAmount*Point),OrderTakeProfit(),0,Black);
}
}
if(OrderType()==OP_SELL)
{
// mover-se para cima para travar o lucro
if ((OrderOpenPrice() - Bid) >= (MoveStop AfterProfitof * Point())) {
OrderModify(OrderTicket(),0,OrderOpenPrice()-(MoveStopAmount*Point),OrderTakeProfit(),0,Black);
}
}
}
}
vazio CheckTrendManager() {
if (Time[0]-LastTMSignalTime > MinTimeBetweenSignals) {
duplo PipsStopLoss, PipsTakeProfit;
duplo TMbuy = iCustom(Symbol(),Period(), "TrendManagerNT",2, 0);
duplo TMsell = iCustom(Symbol(),Period(), "TrendManagerNT",3, 0);
int orderresult;
if (TMbuy > 0) {
se (CheckFilters(OP_BUY)==verdadeiro) {
PipsStopLoss = Ask-(StopLoss * Point()));
PipsTakeProfit = Ask+(TakeProfit * Ponto());
CloseExisting(OP_SELL);
Orderresult =OrderSend(Symbol(),OP_BUY,TMlots,Ask,Slippage,PipsStopLoss, PipsTakeProfit,",MAGICTM,0,Maroon);
Print(Time[0] + "BUY ON TM,resultado do pedido foi :" + resultado do pedido + "stop:". + PipsStopLoss + ",takeprofit:" + PipsTakeProfit);
LastTMSignalTime = Tempo[0];
}
}
se (TMsell > 0){
se (CheckFilters(OP_SELL)==verdadeiro) {
PipsStopLoss = Bid+(StopLoss * Ponto());
PipsTakeProfit = Bid-(TakeProfit * Ponto());
CloseExisting(OP_BUY);
orderresult = OrderSend(Symbol(),OP_SELL,TMlots,Bid,Slippage,PipsStopLoss,PipsTakeProfit,",MAGICTM,0,Green);
Print(Time[0] + "SELL ON TM, o resultado do pedido foi :" + resultado do pedido + "stop:". + PipsStopLoss + ",takeprofit:" + PipsTakeProfit);
LastTMSignalTime = Tempo[0];
}
}
}
}
cheque forTMClose() {
duplo TMclosesell = iCustom(Symbol(),Period(), "TrendManagerNT",4, 0);
double TMclosebuy = iCustom(Symbol(),Period(), "TrendManagerNT",5, 0);
for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==falso) break;
if(OrderMagicNumber()!=MAGICTM || OrderSymbol()!=Symbol()) continua;
//---- apenas feche-a
if ((TMclosesell > 0) && (OrderType()==OP_SELL)) {
OrderClose(OrderTicket(),OrderLots(),Bid,10,Pink);
}
if ((TMclosebuy > 0) && (OrderType()==OP_BUY)) {
OrderClose(OrderTicket(),OrderLots(),Bid,10,Pink);
}
}
}
// apenas fecha quaisquer posições existentes
void CloseExisting(int OrderTyp)
{
for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==falso) break;
if(OrderMagicNumber()!=MAGICTM || OrderSymbol()!=Symbol()) continua;
//---- apenas feche o std slippage
if(OrderType()==OrderTyp)
{
OrderClose(OrderTicket(),OrderLots(),Bid,10,White);
}
}
}
bool CheckFilters(int OrderTyp) {
retorno(verdadeiro);
}
Basta renomear o arquivo com extensão .mq4. Isso é tudo.
Olá.
Tento mudá-lo, mas não consigo trabalhar, mas você pode terminá-lo para mim, por favor?
Obrigado.
Cha.
Olá.
Eu tento mudá-lo, mas não trabalho. Você pode terminá-lo para mim, por favor?
Obrigado.
Cha.Feito plut corrigiu alguns bugs no código.
Robert
Ajuda necessária para a função de ordeersend
Olá,
Estou tendo problemas com a função orderend().
aqui está o código que eu fiz :
} Com este código, eu recebo o erro #130 (erro pára)Alguém pode me explicar o que está errado, eu não entendo...
obrigado.
Se você estiver usando a chamada"Execução Instantânea", isto significa o uso de ordens OP_BUY ou OP_SELL, você não pode especificar um preço de entrada que não seja Pedir Compras e Licitações de Vendas.
Olá,
ticket1=OrderSend(Symbol(),OP_BUY,1,prixdachat+10*Point,5,prixdachat,prixdachat+20*Point, "ordre",1,15,Green);
ticket2=OrderSend(Symbol(),OP_SELLL,1,prixdevente-10*Point,5,prixdevente,prixdevente-20*Point, "ordre",2,15,Red);
Com este código, eu recebo o erro #130 (paradas de erro)
Alguém pode me explicar o que está errado, eu não entendo...
obrigado.USAR ORDENS PENDENTES EM VEZ DE ORDENS INSTANTÂNEAS.
(por exemplo, mudar OP_BUY FOR OP_BUYSTOP e OP_SELL PARA OP_SELLSTOP)
e tudo estará bem.
MUITO OBRIGADO SR. PIP,
CHA.