Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1545

 
Bom dia Caros comerciantes.
me ajudem a entender, eu não entendo este tópico, pois nunca estive envolvido com ele.
Meu amigo entrou no MT4 a convite de algum corretor e transferiu algum dinheiro para ele.
um mês se passou, mas o corretor continua a girar a cabeça que é muito cedo para se retirar.
Eu tirei algumas fotos de seu escritório, olhei para ele e me disse se esta é uma conta real ou demo e como retirar dinheiro desta aplicação
 

o dinheiro é retirado apenas através de "conta pessoal" na interface DC (ou através do rosto de uma pessoa específica, conforme o caso) :-)

Se você tem uma conta em WhereTamForex.com, então você entrou com dinheiro lá e o retirou de lá

 
Антон Кувайцев:
Bom dia Caros comerciantes.
me ajudem a entender, não entendo este tópico, pois nunca o fiz antes.
Meu companheiro entrou no MT4 a convite de algum corretor, traduziu seu dinheiro.
passou um mês e o corretor ainda está lhe dando dores de cabeça que é muito cedo para se retirar.
Eu tirei algumas fotos de seu escritório, olhei para ele e me disse se esta é uma conta real ou demo e como retirar dinheiro desta aplicação

Site fraudulento de um suposto corretor fraudulento.

Basta digitar o nome no google e ler sobre as atividades desses golpistas.

Nenhum dinheiro é retirado da plataforma, nem qualquer dinheiro é depositado nela. A plataforma de negociação é apenas uma ferramenta para negociar com o corretor onde você (ou seu companheiro) abriu sua conta.

E o dinheiro deve ser retirado exatamente no escritório particular da empresa para a qual o dinheiro foi transferido.

Você entendeu? Este site é o site dos desenvolvedores das plataformas de negociação MetaTrader 5 e MetaTrader 4. Você não deposita nenhum fundo aqui, portanto, não pode retirá-los daqui. Assim como você não os retira da plataforma de negociação (é apenas um programa) - você os retira da conta pessoal de seu corretor (aquela com a qual você abriu uma conta de negociação real).

 
Maxim Kuznetsov:

o dinheiro é retirado apenas através de "conta pessoal" na interface DC (ou através do rosto de uma determinada pessoa, conforme o caso) :-)

Se você tem uma conta em WhereTamForex.com, então você entrou com dinheiro lá e o retirou de lá



meu corretor deu a meu amigo acesso para ver o crescimento e movimentação de fundos na aplicação MT4, mas ele não pode ter acesso aos fundos em si, ou seja, ir a uma plataforma através da qual os fundos foram depositados e retirá-los lá.
Como o corretor não lhe deu o nome de usuário e a senha para a própria plataforma.
ele transferiu o dinheiro diretamente para o corretor, não o depositou ele mesmo através da plataforma
 
Антон Кувайцев:
O MT4 apenas exibe a função de balanço e negociação e o saque é feito através de outra plataforma, estou certo ??

e outra pergunta, é possível que o corretor, de alguma forma, tenha dado a meu amigo acesso para ver o crescimento e a movimentação de fundos na aplicação MT4, mas ele não pode ter acesso aos fundos em si, ou seja, ir a uma plataforma através da qual os fundos foram depositados e retirá-los lá.
Como o corretor não lhe deu o nome de usuário e a senha para a própria plataforma.
ele transferiu o dinheiro diretamente para o corretor, não o depositou ele mesmo através da plataforma

Qual corretor?

O dinheiro é transferido para a conta de uma pessoa jurídica. Todos os CDs são pessoas jurídicas.

A transação é feita (geralmente com pouquíssimas exceções, grandes clientes regulares) na interface web DC.

A transação inversa também é feita lá. E a opinião dos especialistas da DC não deve ser mais do que uma consulta, eles não podem proibir a retirada. Eles podem atrasar ligeiramente as transações de verificação. Outra coisa é que os saques/transferências podem "ficar no limbo" enquanto os bancos os verificam.

---

provavelmente vigaristas. E uma maravilhosa ingenuidade sobre seu próprio dinheiro do cliente. E eles tiram proveito disso.

É isso que eles usam. Houve casos, até mesmo descritos neste fórum, quando o golpista pegou muito dinheiro real e o usou para criar uma conta demo para um cliente. Isto, é claro, é puramente criminoso.

 
Антон Кувайцев:
O MT4 apenas exibe o saldo e fornece a função de negociação, enquanto o saque ocorre através de outra plataforma - estou correto?

e outra pergunta, é possível que o corretor, de alguma forma, tenha dado a meu amigo acesso para ver o crescimento e a movimentação de fundos na aplicação MT4, mas ele não consegue ter acesso aos fundos em si, ou seja, ir a uma plataforma através da qual os fundos foram depositados e retirá-los ali.
Como o corretor não lhe deu o nome de usuário e a senha para a própria plataforma.
ele transferiu o dinheiro diretamente para o corretor, não o depositou ele mesmo através da plataforma

1. a plataforma de negociação mostra o saldo, quantidade de dinheiro na conta, fundos disponíveis na conta, garantias, posições abertas e ordens colocadas, histórico de negociação, etc. e, portanto, permite que você negocie.

2. Um corretor fraudulento (ou melhor, um centro de negociação - porque um corretor não pode ser uma fraude - é uma organização registrada com todas as licenças) pode "desenhar" o histórico. Mas eis o interessante - se seu amigo não abriu nenhuma posição ele mesmo, pode não haver nenhum movimento de fundos na conta. A julgar pelas capturas de tela, ele tem um baoan e algum crédito, e os fundos disponíveis são iguais à soma do saldo e do crédito - assim não há posições em aberto, e o dinheiro pode ser retirado (exceto os de crédito).

3. Quando você abre uma conta com o corretor, o login e a senha são enviados na carta que pode ser encontrada na guia Mail da plataforma de negociação (ou você pode escrevê-los imediatamente após criar a conta - eles são mostrados com uma nota para salvá-los em um lugar seguro)

4. Naturalmente, o dinheiro para a conta comercial deve ser transferido através do gabinete pessoal do corretor, no qual a conta comercial é aberta. A plataforma de negociação é apenas uma ferramenta para trabalhar com sua conta de negociação e negociar nela.

 
Artyom Trishkin:

2. Corretor fraudulento (ou melhor, DC - centro de negociação - como corretor não pode ser um fraudador - é uma organização registrada com todas as licenças)

O Banco Central da Rússia tem uma opinião diferente, existe até uma lista negra de corretores estrangeiros do Banco Central e a presença ou ausência de licenças não foi o principal motivo para inclusão nesta lista, existem outros requisitos do BC quando se trabalha com o público de língua russa

google help, leia-o há alguns meses no rbc

 
Existe alguma maneira no Metatrader5 de desativar a renovação automática de um contrato vencido?
 
MakarFX:

Coloque o código acima, acho que o erro está aqui "OrderMagicNumber()".

ou você poderia tentar desta forma

Tentei inseri-lo, mas ele não compila. Estou expondo todo o código, se necessário, mostrarei uma captura de tela de compilação. Acho que pode haver outro problema, meu take está definido em relação à parada via coeficiente (variável externa), talvez deva ser alterado para ajuste manual e será mais fácil para a EA adicionar?
input int takeProfitC = 2;// Коэффициент Take Profit
input int stop_loss = 100;//Уровень Stop Loss
input int stop_count = 2;//Количество Stop Loss
input double lots = 0.01;//Лоты
input int slippage = 30;//Проскальзывание
input int datePeriod = 48;// Время удержания при SL


int tp = 0;
int tpc = 0;
double tp_price_old = 777;
int stopLossCount = 0;
datetime startOrder = 0;
int pending_ticket = 0;
int lastMagic = 0;
bool isLimitOn = false;
bool isStart = True;
datetime startTime = 0;
bool isFinal = false;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit() {
//
   //OrderSend(Symbol(), OP_SELL, 0.01, 0.76228, 300, 0, 0);
   //OrderSend(Symbol(), OP_SELLSTOP, 0.01, 0.77057, 300, 0, 0);
   //OrderSend(Symbol(), OP_BUYSTOP, 0.01, 0.76928, 300, 0, 0);
   tp = stop_loss * takeProfitC;
//---
   return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {
//--

}
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick() {
//---
//Comment("StopCount: " + stopLossCount + "\n" + "CurrentStopC: " + stop_count);
   for(int i = OrdersTotal() - 1; i >= 0; i--) {
      if(OrderSelect(i, SELECT_BY_POS)) {
         if(OrderSymbol() == Symbol()) {
         int magic = OrderMagicNumber();
            if((OrderType() == OP_BUY || OrderType() == OP_SELL) && OrderOpenTime()) {
               int ticket = OrderTicket();
               if(!findPending(ticket)) {
                  if(OrderSelect(ticket, SELECT_BY_TICKET) && (((TimeCurrent() <= (startTime + datePeriod * 3600))) || isStart)) {
                     if(OrderType() == OP_BUY) {
                        double sl_price = NormalizeDouble(OrderOpenPrice() - Point() * MathMax(stop_loss, MarketInfo(Symbol(), MODE_STOPLEVEL)), Digits);
                        double tp_price = NormalizeDouble((OrderOpenPrice() + Point() * (tp)), Digits);
                        if(!OrderModify(OrderTicket(), OrderOpenPrice(), sl_price, tp_price, OrderExpiration())) {
                           Print("Ошибка модификации ордера:", GetLastError());
                        } else {
                           if(stopLossCount < stop_count && tp_price != tp_price_old){
                              pending_ticket = OrderSend(Symbol(), OP_SELLSTOP, lots, sl_price, slippage, 0, 0, NULL, OrderTicket());
                              lastMagic = ticket;
                              isLimitOn = true;
                              if(isStart){
                                 startTime = TimeCurrent();
                                 isStart = false;
                              }
                              tp_price_old = tp_price;
                              stopLossCount++;                         
                           }
                        }
                     } else if(OrderType() == OP_SELL) {
                        double sl_price = NormalizeDouble(OrderOpenPrice() + Point() * MathMax(stop_loss, MarketInfo(Symbol(), MODE_STOPLEVEL)), Digits);
                        double tp_price = NormalizeDouble((OrderOpenPrice() - Point() * (tp)), Digits);
                        if(!OrderModify(OrderTicket(), OrderOpenPrice(), sl_price, tp_price, OrderExpiration())) {
                           Print("Ошибка модификации ордера:", GetLastError());
                        } else {
                          if(stopLossCount < stop_count && tp_price != tp_price_old){
                              pending_ticket = OrderSend(Symbol(), OP_BUYSTOP, lots, sl_price, slippage, 0, 0, NULL, OrderTicket());
                              lastMagic = ticket;
                              isLimitOn = true;
                              if(isStart){
                                 startTime = TimeCurrent();
                                 isStart = false;
                              }
                              stopLossCount++;
                              tp_price_old = tp_price;  
                          }
                        }
                     }
                  }
               }
         }
         if(startTime > 0 && (TimeCurrent() >= (startTime + datePeriod * 3600))){
            deletePending(lastMagic);
            isFinal = true;
         }
            
         if(lastMagic != 0 && !IsSell() && !IsBuy() && magic == lastMagic) {
            tpc = 0;
            startTime = 0;
            stopLossCount = 0;
            deletePending(lastMagic);
            isStart = true;
            }
         double GetPointLastLoss(){
            datetime t=0;
            double result=0,p=0,tp=0;
            int i=OrdersHistoryTotal();
         for(int pos=0; pos<i; pos++)
         {
          if(OrderSelect(pos, SELECT_BY_POS, MODE_HISTORY))
         {
          if((OrderSymbol()==_Symbol) && (OrderMagicNumber()==Magic))
           {
            if(OrderType()==OP_BUY || OrderType()==OP_SELL)
              {
               if(t<OrderCloseTime())
                 {t=OrderCloseTime(); p=OrderProfit(); tp=OrderType();
                  if(tp==OP_BUY&&p<0)
                    {
                     result=OrderOpenPrice()-OrderClosePrice();
                    } else {result=0;}
                  if(tp==OP_SELL&&p<0)
                    {
                     result=OrderClosePrice()-OrderOpenPrice();
                    } else {result=0;}
                 }
              }
           }
        }
     }
   return(result);
  }
      }
     }
   }
   if((startTime > 0 || isFinal) && !IsSell() && !IsBuy()){
            tpc = 0;
            startTime = 0;
            stopLossCount = 0;
            isStart = true;
            isFinal = false;
   }
}                                                                
//+------------------------------------------------------------------+
bool findPending(int ticket) {
   for(int i = OrdersTotal() - 1; i >= 0; i--) {
      if(OrderSelect(i, SELECT_BY_POS)) {
         if(OrderMagicNumber() == ticket) {
            return true;
         }
      }
   }

   for(int i = OrdersHistoryTotal() - 1; i >= 0; i--) {
      if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
         if(OrderMagicNumber() == ticket) {
            return true;
         }
      }
   }
   return false;
}
//+------------------------------------------------------------------+
void deletePending(int magic) {
   for(int i = OrdersTotal() - 1; i >= 0; i--) {
      if(OrderSelect(i, SELECT_BY_POS)) {
         if(OrderMagicNumber() == magic) {
            if(OrderType() != OP_BUY && OrderType() != OP_SELL) {
               if(!OrderDelete(OrderTicket())) {
                  Print("Ошибка удаления отложеного одера: ", GetLastError());
               }
            }
            break;
         }
      }
   }
}
//+------------------------------------------------------------------+
bool IsSell()
{
   int count = 0;
   for (int trade = OrdersTotal () -1; trade >= 0; trade--)
   {
      if (OrderSelect (trade, SELECT_BY_POS, MODE_TRADES) 
          && OrderSymbol() == Symbol()
          && OrderType() == OP_SELL)
      {
         count++;
      }
      
   }
   if (count == 0)
      return false;
   else
      return true;
}
//+------------------------------------------------------------------+
bool IsBuy()
{
   int count = 0;
   for (int trade = OrdersTotal () -1; trade >= 0; trade--)
   {
      if (OrderSelect (trade, SELECT_BY_POS, MODE_TRADES) 
          && OrderSymbol() == Symbol()
          && OrderType() == OP_BUY)
      {
         count++;
      }
      
   }
   if (count == 0)
      return false;
   else
      return true;
}
 
SGarnov:
Eu tentei inseri-lo, mas ele não compila. Estou expondo todo o código, se necessário, vou mostrar uma tela de compilação. Eu também acho que esse pode ser o problema, minha ordem Take é definida em relação à parada por coeficiente (variável externa), talvez ela possa ser alterada para configuração manual e será mais fácil para a EA adicionar?
Sua EA segue os pedidos feitos manualmente?
Razão: