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

 
K-2SO:


Ok, vamos deixar o ouro de lado para evitar confusão e deixar de lado a questão de por que você calcula a margem usando o método de cálculo do contrato e não o método da margem como indicado na especificação XAUUSD.

Aqui está novamente uma captura de tela das especificações do EURUSD:

aqui está novamente uma captura de tela de um pedido colocado sobre este símbolo com um cálculo de margem (do terminal):


Aqui está em todos os lugares, tipo de cálculo Forex. Usando que fórmula você pode obter 1300 da tabela que você citou?

Por este aqui:

ID

Descrição

Fórmula

SÍMBOLO_CALC_MODE_FOREX

Modo Forex - cálculo de lucro e margem para Forex

Margem: Lotes*Tamanho/ Alavancagem do contrato

Lucro: (fechar_preço_aberto_preço)*Tamanho_de_contrato*Lotes


K-2SO:

não existe uma fórmula universal para o cálculo da margem.

Quem disse que tem que ser universal? A tabela foi entregue para que você saiba como realizar cálculos para diferentes instrumentos. Esta tabela contém tudo o que você precisa para escrever uma função universal que irá calcular tudo e qualquer coisa.

K-2SO:

Consequentemente, pode haver também problemas com os cálculos.

Somente se o livro de matemática tiver sido mordido antes de ter sido lido e absorvido.

 
K-2SO:

Esse é o meu ponto - não existe uma fórmula universal para calcular o depósito. Conseqüentemente, pode haver problemas no cálculo da porcentagem.

Parece que não só já fumei aritmética antes, mas... Estou sem palavras.

Afinal de contas, tudo isso pode ser resolvido por simples adições/mudanças de condições. Em minha primeira versão, eu estupidamente inseri "USD" quando tive que colocar

     string accountCurrency = AccountCurrency();

e corrigiu duas linhas de acordo.

     double price = accountCurrency == symbolCurencyMargin ? 1 : type%2 == OP_BUY ? bid : ask;
     double orderOpenPrice = accountCurrency == symbolCurencyMargin ? 1 : OrderOpenPrice();

Isso é tudo... Se você quiser a variante com a possibilidade de determinar a margem para futuros, faça um pedido pessoal aqui e me envie o link aqui ou em particular. Fá-lo-ei por um preço mínimo.

 
ir0407:

Por este aqui:

ID

Descrição

Fórmula

SÍMBOLO_CALC_MODE_FOREX

Modo Forex - cálculo de lucro e margem para Forex

Margem: Lotes*Tamanho/ Alavancagem do contrato

Lucro: (fechar_preço_aberto_preço)*Tamanho_de_contrato*Lotes



Bem, tente calculá-lo, você nem precisa escrever um código, a especificação e uma captura de tela dos cálculos do terminal estão bem na sua frente, calcule por si mesmo :D

A alavancagem é de 100, se alguma coisa

ir0407:


E quem disse que deveria ser universal? O gráfico foi entregue para que você saiba como realizar cálculos para diferentes instrumentos. Esta tabela tem tudo o que você precisa para escrever uma função universal que calculará tudo e mais alguma coisa.

Isso só se o livro de matemática fosse mastigado antes de ser lido e assimilado.

Também sou um verdadeiro programador - vejo o último post (foto), reajo ao último post... O contexto é a chave. Eu quis dizer uma fórmula universal para um tipo de cálculo já definido. Se for FOREX, então este tipo de cálculo deve ser o mesmo para todos os corretores.
 
Alexey Viktorov:

Parece que você não só já fumou aritmética antes, mas também ... Estou sem palavras.

Afinal, tudo isso é resolvido por simples adições/mudanças às condições. Em minha primeira versão, eu estupidamente inseri "USD" quando tive que colocar

e corrigiu duas linhas de acordo.

Isso é tudo... Se você precisar de uma variante com a capacidade de determinar a margem em futuros, faça um pedido pessoal aqui e jogue o link aqui ou em particular. Fá-lo-ei pelo preço mínimo.


Não sei o que você está fumando lá, mas o queo nome da moeda da conta corrente tem a ver com isso? E eu não quero pedir nada de você - não preciso disso para nada quando os cálculos estão errados. Quero entender isso, se estiver errado, me cutucar, e até agora não vi nada além da teoria de que tudo é possível em seus últimos cargos. Eu dei um exemplo concreto, a moeda do depósito é a mesma que a moeda da margem, todos os cálculos são exclusivamente em libras esterlinas. Então, me consiga que 1300 no método padrão de cálculo Forex descrito na tabela.

Se você não quiser continuar a discussão, você tem o direito absoluto, mas não preciso olhar silenciosamente para sua boca e acenar com a cabeça quando não vejo a implementação prática de suas palavras ... ou estamos falando de coisas diferentes.

 
K-2SO:


Eu não sei o que você está fumando lá, mas o quea moeda da conta corrente tem a ver com isso? E eu não quero pedir nada de você - não há necessidade de nada quando os cálculos estão errados. Quero entender isso, se estiver errado, me cutucar, e até agora não vi nada além da teoria de que tudo é possível em seus últimos cargos. Eu dei um exemplo concreto, a moeda do depósito é a mesma que a moeda da margem, todos os cálculos são exclusivamente em libras esterlinas. Então, me consiga que 1300 no método padrão de cálculo Forex descrito na tabela.

Se você não quiser discutir mais, esse é seu direito absoluto, mas não preciso olhar silenciosamente para você na boca e consentir quando não vejo a implementação prática de suas palavras... ou estamos falando de coisas diferentes no conjunto.

Você é um homem duro. Bem, tudo já foi dito e mais de uma vez. De que outra forma posso explicar isso? Eis o que o roteiro imprime com as correções que eu dei no último post

2017.06.09 14:05:09.875 Script test EURUSD,H4: removed
2017.06.09 14:05:09.874 test EURUSD,H4: uninit reason 0
2017.06.09 14:05:09.874 test EURUSD,H4: ******** AccountMargin = 1300.00 USD
2017.06.09 14:05:09.874 test EURUSD,H4: ******** Процент маржи 130 Маржа ордера EURUSD 1.0 = 1300.0
2017.06.09 14:05:09.874 test EURUSD,H4: initialized
2017.06.09 14:05:09.857 Script Test\test EURUSD,H4: loaded successfully

E o mesmo roteiro na conta do Robo.

2017.06.09 14:11:51.192 Script test USDJPY.e,M15: removed
2017.06.09 14:11:51.191 test USDJPY.e,M15: uninit reason 0
2017.06.09 14:11:51.191 test USDJPY.e,M15: ******** AccountMargin = 2166.67 USD
2017.06.09 14:11:51.191 test USDJPY.e,M15: ******** Процент маржи 200 Маржа ордера XAUUSD.e 1.0 = 840.4333333333334
2017.06.09 14:11:51.191 test USDJPY.e,M15: ******** Процент маржи 1 Маржа ордера WTI 1.0 = 484.9
2017.06.09 14:11:51.191 test USDJPY.e,M15: ******** Процент маржи 100 Маржа ордера USDJPY.e 1.0 = 333.3333333333333
2017.06.09 14:11:51.191 test USDJPY.e,M15: ******** Процент маржи 1 Маржа ордера BRENT 1.0 = 508.0
2017.06.09 14:11:51.190 test USDJPY.e,M15: initialized
2017.06.09 14:11:51.179 Script Test\test USDJPY.e,M15: loaded successfully


 
K-2SO:

Bem, tente calcular por ele, você nem precisa escrever um código, a especificação e uma tela de cálculo do terminal estão bem na sua frente, calcule por si mesmo :D

Meu cálculo da calculadora levou 30 segundos e correspondeu ao número em sua tela).
K-2SO:

A alavancagem é de 100, se alguma coisa.

Você pode vê-lo sem sua adição.


A fórmula Lots*Contract_Size/Leverage é básica e é usada para calcular a margem para todos os instrumentos de Forex.

E depois há peculiaridades de cada cozinha em particular (ou seja, empresas de corretagem).

1. A moeda da margem pode ser diferente da moeda do depósito. Consequentemente, o resultado obtido pela fórmula básica a ser convertida para a moeda do depósito.

2. A cozinha pode aplicar descontos/suplementos que são refletidos em sua captura de tela na coluna "Porcentagem de Margem". Se o número nesta coluna for diferente de 100%, você tem que levar isto em consideração em seus cálculos.


No primeiro ponto, você tem uma moeda de depósito USD - então você não precisa recalcular. Mas para o segundo item, você tem um "percentual de margem" = 130% ... Isto soa algum sino? A margem é de 1300 libras e a "Porcentagem de margem" é de 130%. Você é tão cego que não consegue ver isso?

 
ir0407:

A cozinha pode aplicar os descontos/suplementos que são mostrados em sua captura de tela na coluna "Porcentagem de margem". Se o número nesta coluna for diferente de 100%, você tem que levá-lo em conta em seus cálculos.

Para o primeiro ponto, sua moeda de depósito é USD, portanto, você não precisa recalcular. Mas para o segundo item, você tem "Margem percentual" = 130%... Isto soa algum sino? A margem é de 1300 libras e a "Porcentagem de margem" é de 130%. Você é tão cego que não consegue ver isso?


Levar exatamente em conta o percentual de margem (no método de cálculo Forex) foi o que me confundiu, pois era a única maneira de obter o resultado que eu estava procurando. E de fato outros corretores (convencionais), onde a fórmula básica pode não levar em conta o percentual de margem, é igual a 100 - eu também verifiquei isso há alguns dias. Só queria uma confirmação independente de minhas conclusões... e também está claro para mim como aplicá-lo à fórmula geral de cálculo da margem para este tipo de depósito. Tudo o que falta fazer é finalizar a universalização (se de fato for possível) do cálculo do percentual de margem - os cargos de Alexey são uma ajuda para mim.
Razão: