Precisa de uma fórmula de tamanho LOT de gerenciamento de dinheiro baseada em SL e Risco de Conta! - página 2
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
Se eu tiver entendido bem a pergunta, isto fará o trabalho por você.
duplo livre = AccountFreeMargin();
perda_do dobro do potencial,
dupla soma_potencial_perda = 0
pips duplos, lote_tamanho;
duplo por cento_depo = 5;
potencial_loss = (OrderLots() * (OrderOpenPrice() - OrderStopLoss()))*100000;
sum_potencial_loss = perda_potencial_ longa_sum_potencial + perda_potencial_ longa;
tamanho_do_lote = (((( livre_desempenho_potencial_deluta) * por cento_depo)/100.0)/pips)/100000 ;
Obrigado, mas já tenho a fórmula, só preciso fixar o valor do ponto porque tenho conta em EUR e não em USD. O código é este:
E preciso substituir o Ponto por TICKVALUE* TICKSIZE, por isso ficaria assim
Se alguém pode confirmar que esta idéia está correta, então o problema está resolvido, então por favor me ajude rapidamente, e Feliz Natal depois!
Eu removi seu código . . . .
Obrigado por sua ajuda.
Obrigado, mas já tenho a fórmula, só preciso fixar o valor do ponto porque tenho conta em EUR e não em USD. O código é este:
E preciso substituir o Ponto por TICKVALUE* TICKSIZE, por isso ficaria assim
Se alguém pode confirmar que esta idéia está correta, então o problema está resolvido, então por favor me ajude rapidamente, e Feliz Natal depois!
Não posso confirmá-lo, mas sugiro depurá-lo com o Alerta(); assim ?
ou
E você mesmo o confirmará.
Obrigado por sua ajuda.
Não posso confirmá-lo, mas sugiro depurá-lo com o Alerta(); assim ?
ou
E você mesmo a confirmará.
Não, o que eu quis dizer é que é correto usar o TICKVALUE* TICKSIZE ou o TICKVALUE/ TICKSIZE como WHRoeder sugeriu, porque o * parece mais lógico lá. Então qual é o correto, dado que minha conta está em EUR, então olhamos para a moeda base e não para a cotação?
Proximus: WTF guys, shouldnt that be TICKVALUE * TICKSIZE instead of TICKVALUE /TICKSIZE ? I think there is a big mistake there
Se TickValue for $10 e Ticksizeize=0,0001. Lá, se o mercado se mover 0,0020 o valor é $10/0,0001 * 0,0020=$200 / por lote. $10 por pip * 20 pips / por lote.
Se TickValue for $1 e Ticksizeize=0,00001. Lá se o mercado se move 0,0020 o valor é $1/0,00001 * 0,0020=$200 / por lote ainda. Não há erro aqui.
Ok, estes devem ser os passos para o (máximo) CÁLCULO DO TAMANHO DE VOLUME:
(por favor me corrija se eu estiver errado ^_^)
AccountMoneyRisk = AccountMoney * Risco%
AccountCounterQuote = Cotação(AccountCurrency/CounterCurrency)
ContraCurrencyRisk = AccountMoneyRisk * AccountCounterQuote
PipValue = ContraCurrencyRisk / StopLoss
LotTickValue = LotSize * TickSize
Volume = PipValue * LotTickValue
Exemplo:
Moeda AccountCurrency: EUR
CurrencyPair: GBPUSD
MoedaBaseC: GBP
Contra-moeda: USD
AccountMoney: 5000 EUR
Risco: 1%
StopLoss: 200 pips (Contra Moeda)
Tamanho do Lote: 100000 (Contra Moeda)
Tamanho do TickSize: 0. 00001
AccountMoneyRisk = AccountMoney * Risco% = 5000 EUR * 1% = 50 EUR
AccountCounterQuote = Cotação(AccountCurrency/CounterCurrency) = Cotação(EUR/USD) = 1.5000
ContraCurrencyRisk = AccountMoneyRisk * AccountCounterQuote = 50 EUR * 1.5000 = 75 USD
PipValue = ContraCurrencyRisk / StopLoss = 75 / 200 = 0,375
LotTickValue = LotSize * TickSize = 100000 * 0,00001 = 1 USD
Volume = PipValue * LotTickValue = 0,375 * 1 USD = 0,375
Isso assume que a Contramoeda é a mesma que a Moeda de Conta, e não inclui o spread, e assume erroneamente que um pip == um ponto em um corretor de 5 dígitos e que o ticksize == ponto.
Não necessariamente. Saldo da conta *% = RISK = (OrderOpenPrice - OrderStopLoss)*DIR * OrderLots * DeltaPerlot (Nota OOP-OSL inclui o SPREAD)
Ok, esta é a versão final, confirme se está correta, eu não entendo porque você insiste em suas coisas DeltaPerlot quando claramente não funciona em minha situação, porque eu tenho conta em EUR.
Esta é a minha função de dimensionamento de lotes:
- O STOPSLIP adiciona X quantidade de pips ao stoplevel+SPREAD atual
- Eu uso TICKVALUE * TICKSIZE porque tenho conta em EUR e não em USD, então faz sentido que o valor do pip seja 0,000007 ao invés de 0,00001 no meu corretor de 5 dígitos porque é contado na taxa de câmbio do EUR
Portanto, alguém pode confirmar se está correto, ou se não está, por favor, corrija minha fórmula, não me dê links para outros posts, porque eu não os entendo, apenas corrija minha função LOTE() e eu ficarei feliz então, por favor, ajude-me!Isso me dá uma dor de cabeça só de tentar resolver os parênteses!
Para ser honesto, não tenho a menor idéia do que você está tentando alcançar aqui.
Não consigo ver como MODE_STOPLEVEL ou SPREAD são relevantes, certamente você deveria estar baseando seus cálculos na distância de stop-loss do preço atual?
Não deve fazer diferença qual é a moeda da conta, o cálculo deve ser o mesmo porque TICKVALUE está na moeda da conta.
Observe que, ao colocar sua linha de código em 2 linhas, o correio não é tão largo e facilita a leitura sem rolar para a direita e para a esquerda :)