Como obter a "Porcentagem de Margem" de forma programática - página 9

 
K-2SO:

Tire o chapéu para você, você quase acertou! Em todos os três corretores previamente revisados com diferentes percentuais de margem, o cálculo para o ouro (para pedidos em uma direção) está correto.

Mas o roteiro ainda falha com a exotismo. Eu parei na fxcm broker. A margem percentual para o ouro é de 70000, para pares de moedas convencionais é de 130, a moeda da margem parece ser USD. E nada está contando corretamente em qualquer lugar! (. Eu mesmo tenho procurado a chave para isso há dois dias e, de fato, como resultado disso, estou agora procurando uma resposta à pergunta, como é que, como resultado dos cálculos das moedas base e suas taxas com moedas cotadas, obtemos uma moeda margem... Talvez seja isto, ou talvez seja o fato de este corretor levar em conta o percentual de margem mesmo para pares de moedas normais.

Você pode baixar o terminal aqui ru.files.fm/u/xfezz883#_ , descompactá-lo, executar o arquivo exe, iniciar a demonstração...

Abri uma demonstração, mesmo duas, uma não tem ouro, a outra XAUUSD com a porcentagem de margem 70000 e o lote padrão 1. E o motivo não é o cálculo correto no

percentage = NormalizeDouble(
                             margin          // Маржа получена в валюте депозита с учётом плеча
                           /(contractSize    // Размер контракта в базовой валюте
                            *price           // Умножаем на текущую цену и получаем в валюте депозита
                            /100)            // Это для того чтобы коэффициент перевести в проценты
                           *(calcMode == 0 ? leverage : 1) // Это получено методом научно-технического тыка.
                                    // Если способ расчёта 0 - Forex; то надо учесть плечо
                                    //                     1 - CFD; то плечо не учитывается
                                    //                     2 - Futures; 3 - CFD на индексы НЕ проверялись, их у меня нету...
                           , 0);

experimente você mesmo estas linhas.

      percentage = NormalizeDouble(margin/(contractSize*price/100)*(calcMode == 0 ? leverage : 1), 0);
      orderMargin = (orderLots*contractSize*orderOpenPrice*percentage/100)/(calcMode == 0 ? leverage : 1);

Se eu ficar entediado, talvez eu também experimente.

 
Alexey Viktorov:

As cruzes não são um problema a ser calculado. Basta pegar uma cotação que traduza a moeda da margem na moeda do depósito.

Por exemplo, preço EURJPY

Se o depósito for em USD, você deve usar EURUSD. O CADJPY deve ser calculado usando USDCAD. Aqui devemos ver como adicionar a moeda de depósito à moeda de margem, não devemos simplesmente inseri-la na lista.

Os balcões não são tão difíceis de ter MarketInfo(símbolo, MODE_MARGINHEDGED). O único problema é encontrar primeiro o balcão e depois decompor parte do balcão e o resto completamente...

Em geral, vejo que o único benefício deste artigo é que o comerciante sabe antecipadamente qual margem será tomada quando a ordem pendente for ativada e remove a ordem pendente a tempo se não houver dinheiro suficiente. Uma vez tive dificuldades com isso ao colocar um EA no mercado.

2017.06.06 18:00:01.890 Script vik2 XAUUSD,H1: removed
2017.06.06 18:00:01.875 vik2 XAUUSD,H1: uninit reason 0
2017.06.06 18:00:01.875 vik2 XAUUSD,H1: ******** AccountMargin = 12.93 USD
2017.06.06 18:00:01.875 vik2 XAUUSD,H1: ******** Процент маржи 1 Маржа ордера XAUUSD 1.0 = 12.933
2017.06.06 18:00:01.875 vik2 XAUUSD,H1: initialized
2017.06.06 18:00:01.859 Script vik2 XAUUSD,H1: loaded successfully
2017.06.06 17:59:51.593 Compiling 'vik2'

alavancagem 100

 
Alexey Viktorov:

Abri uma demonstração, mesmo duas, uma não tem ouro, a outra tem XAUUSD com um percentual de margem de 70000 e um lote padrão de 1. E o motivo do cálculo incorreto é

Bem, é disso que se trata todo este tópico... e eu acho que afinal não há cálculo universal )
 

E então, em pares de moedas normais no método de cálculo Forex, você tem que levar em conta a porcentagem?

2017.06.06 18:09:54.640 Script vik2 EURUSD,H1: removed
2017.06.06 18:09:54.640 vik2 EURUSD,H1: uninit reason 0
2017.06.06 18:09:54.640 vik2 EURUSD,H1: ******** AccountMargin = 1295.77 USD
2017.06.06 18:09:54.640 vik2 EURUSD,H1: ******** Процент маржи 115 Маржа ордера EURUSD 1.0 = 1295.774
2017.06.06 18:09:54.640 vik2 EURUSD,H1: initialized
2017.06.06 18:09:54.625 Script vik2 EURUSD,H1: loaded successfully


 
K-2SO:
Bem, é disso que se trata todo este tópico... e acho que não há um cálculo de tamanho único para todos).
Por que não? Há um link na primeira página com as fórmulas. Ela pode ser dividida em vários algoritmos, dependendo de como o cálculo é feito. O que sugeri para experimentar é fundamentalmente errado, não perca seu tempo. Você tem que ir pelo outro lado.
 
Alexey Viktorov:
Por que não? Há um link na primeira página onde as fórmulas estão disponíveis. Ela pode ser dividida em vários algoritmos, dependendo de como o cálculo é feito. O que sugeri para experimentar é fundamentalmente errado, não perca seu tempo. Você tem que ir pelo outro lado.
Eu tentei estas fórmulas no método de cálculo FOREX, nada funciona corretamente no último corretor, mesmo para EURUSD.
 
K-2SO:
Eu tentei estas fórmulas no método de cálculo FOREX, no último corretor nada funciona corretamente, nem mesmo para EURUSD.
Como isso não funciona? Meu roteiro usa fórmulas de lá e parece funcionar para forex e cfd. Os futuros e índices são calculados usando fórmulas diferentes e eu não os usei.
 
Alexey Viktorov:
Como isso não funciona? Em meu roteiro, as fórmulas são de lá e parecem funcionar para forex e cfd. Mas os futuros e índices são calculados usando fórmulas diferentes e eu não os usei.
Eu lhe dei screenshots acima de como eles funcionam...
 
K-2SO:
Eu lhe dei screenshots acima de como eles funcionam...
Certo. Meu script conta margem para CFDs e forex, e suas capturas de tela são para futuros, cujas fórmulas estão na mesma página.
 
Alexey Viktorov:
Certo. Meu script calcula a margem para CFD e forex, e suas capturas de tela são para futuros, cujas fórmulas estão na mesma página.

De onde você tirou essa conclusão?^ ^


A maneira de calcular a margem para XAUUSD, também Forex. há lucro é futuro, não aquele que estamos tentando calcular.
Razão: