Estimativa das necessidades de margem na MQL5 - página 5

 
Petros Shatakhtsyan:

Aconselho-o a ler atentamente para que serve esta função:


margem

[Variável que será usada para registrar a margem necessária se esta função for executada com sucesso. O cálculo é feito como se não hou vesse ordens pendentes e posições em aberto na conta corrente.

O valor da margem depende de muitos fatores e pode mudar à medida que o ambiente de mercado muda.

É aqui que nos confundimos: como você propõe calcular a margem para pedidos pendentes com base na suposição de que o pedido pendente pode ou não funcionar?

 
Vladimir Karputov:

E como você se propõe contabilizar a margem em ordens pendentes, assumindo que a ordem pendente pode ou não funcionar?

Exatamente. E não apenas qualquer ordem pendente. Quando há posições abertas na conta, então devemos nos perguntar: com que lote uma ordem deve ser aberta a fim de manter a margem menor do que a Margem Livre.

Para isso você deve conhecer não a alavancagem da conta comercial, mas precisamente a alavancagem atual do símbolo. E sem uma real alavancagem é impossível determinar a margem.

 

OK, teóricos ...

Aqui está um trecho de código de um programa de trabalho que tem 100 anos de idade.

)))

            if(Action=="BUY" && orBUY==0)
               {
                  if(OrderCalcMargin(ORDER_TYPE_BUY,_Symbol,1,ASK,Mgn)==true)
                     {
                        Lot=Acc_Bal*Risk/(Mgn*lvrg);
                        if(Lot<minLot)Lot=0;
                        if(Lot>maxLot)Lot=maxLot;
                        Lot=NormalizeDouble(Lot,ls);
                        if(Lot>=minLot)
                           {
                              if(OpenPositions(_Symbol, "BUY", Lot, Magik_Number, "xxx")==-1)
                                 {
                                    Fun_Error(GetLastError());
                                    return;
                                 }
                           }
                     }              
               }
            if(Action=="SELL" && orSELL==0)
               {
                  if(OrderCalcMargin(ORDER_TYPE_SELL,_Symbol,1,BID,Mgn)==true)
                     {
                        Lot=Acc_Bal*Risk/(Mgn*lvrg);
                        if(Lot<minLot)Lot=0;
                        if(Lot>maxLot)Lot=maxLot;
                        Lot=NormalizeDouble(Lot,ls);
                        if(Lot>=minLot)
                           {              
                              if(OpenPositions(_Symbol, "SELL", Lot, Magik_Number, "xxx")==-1)
                                 {
                                    Fun_Error(GetLastError());
                                    return;
                                 }                              
                           }
                     }           
               }

Bem, você tem que, você tem que, você tem que!

Eu já esqueci...

SAR, faça uma troca, escreva à mão um ombro para cada personagem e informe o programa.

Não se preocupe onde o problema é resolvido em poucas palavras, escreva o código e repasse-o.

// Se você não puder contar seu dinheiro, outra pessoa o fará por você. ( © new-rena )

Boa sorte para você!

Adeus

 
Renat Akhtyamov:

OK, teóricos ...

Aqui está um trecho de código de um programa de trabalho que tem 100 anos de idade.


Você tem que, você tem que, você tem que!

Eu já esqueci...

SAR, faça uma troca, escreva à mão um ombro para cada personagem e informe o programa.

Não se preocupe onde o problema é resolvido como um bolo, escreva o código e revise-o.

// Se você não puder contar seu dinheiro, outra pessoa o contará para você. ( © new-rena )

Boa sorte para você!

Adeus

Um acréscimo ao acima mencionado:

E não se esqueça de reescrever esta lista periodicamente. Não a cada hora, mas somente quando o corretor muda esses valores. ))))))

 
Alexey Viktorov:

Adendo ao acima mencionado:

E não se esqueça de reescrever periodicamente esta lista. Não a cada hora, mas somente quando seu corretor muda estes valores. ))))))

Em tais condições comerciais, é melhor calcular todos os lotes com o mínimo de alavancagem para não correr o risco de uma súbita escassez de fundos no momento mais inoportuno.

Neste caso 1k2

)))

Eu tenho um mínimo de 1k100

Minha alavancagem é de pelo menos 1k100 e eu nunca tive uma ameaça de queda.

)))

 
Renat Akhtyamov:

OK, teóricos...


Não é apenas teoria, é prática.

Você escreve um programa analfabeto e mostra a todos suas "obras-primas" e diz disparates.

Se você tiver vagas em aberto, seu programa não funcionará corretamente.

 
Petros Shatakhtsyan:

Não é apenas teoria, é prática.

Você escreve um programa analfabeto e mostra a todos suas "obras-primas" e diz disparates.

Se você tiver vagas em aberto, seu programa não funcionará corretamente.

Ouça, leia com atenção.

if(Action==="BUY" && orBUY==0)

Escreverei três cartas em uma palavra em breve...

 
Renat Akhtyamov:

Ouça, leia com atenção.

if(Action==="BUY" && orBUY==0)

Em breve escreverei três cartas na palavra...

Isto é uma ameaça de um menino de rua?

Aconselho você a se acalmar e ficar quieto, ou escreverei as piores críticas nas discussões de seus produtos mostrando todos os defeitos de seus programas e ninguém irá comprá-los).

 
Petros Shatakhtsyan:

Isto é uma ameaça de um menino de rua?

Aconselho você a se acalmar e ficar quieto, ou escreverei as piores críticas nas discussões de seus produtos, mostrando todos os defeitos de seus programas e ninguém vai comprá-los).

isso é com você, não estou ameaçando.

Eu só mostrei o que você não pode ver por si mesmo.

é isso

)

 
Renat Akhtyamov:

Em tais condições comerciais, é melhor calcular todos os lotes com o mínimo de alavancagem para não correr o risco de uma súbita escassez de fundos no momento mais inoportuno.

Neste caso 1k2

)))

Eu tenho um mínimo de 1k100

Eu tenho um mínimo de 1q100, até agora eles não ameaçaram cortar minhas perdas.

)))

Renat, no portão "Buchenwald" foi escrito jedem das Seine

Não imponha sua opinião aos outros. Alguém pode precisar carregar seu depósito ao máximo e essa decisão depende do parâmetro que está sendo discutido aqui.