Resposta

[Como fazer] Não se esqueça do valor do ponto!

50 respostas

geektrader

Customer, bbp_participant, community, 522 replies.

Perfil da visita

8 anos atrás #113714

Observei muitas vezes que, quando as pessoas publicam os resultados de suas estratégias aqui, elas não estão levando em conta o valor real do ponto que a SQ permite definir. O valor do ponto (um múltiplo do valor do tick) precisa ser definido corretamente em relação à moeda base de sua conta.

Por exemplo: sua conta é baseada em USD e você negocia o EURUSD. O EURUSD é nomeado em USD, portanto, qualquer lucro/prejuízo proveniente dele já está em USD por natureza e, se sua conta for baseada em USD, a conversão do lucro desse par para a moeda base de sua conta seria "1". Entretanto, a diversão começa se você começar a negociar o EURAUD em sua conta baseada em dólares. No EURAUD, qualquer lucro/prejuízo é dado em AUD, que precisa ser convertido para a moeda base de sua conta em USD. A partir de agora, isso significaria que, para sua conta baseada em USD:

EURUSD 1 lote, movimento de 1 pip = 10 USD

EURAUD 1 lote, movimento de 1 pip = ~8 USD

Sua corretora faz isso automaticamente em tempo real quando você negocia e mostra seus lucros, mas quando você faz backtest no SQ e cria estratégias, essa é uma história totalmente diferente e NÃO é levada em consideração se você não a contabilizar no SQ no Gerenciador de dados.

Então, como resolvemos esse problema no SQ? Por meio do campo "Point Value in $" de cada par no Data Manager!

Como exemplo, aqui está uma captura de tela da minha configuração atual para contas em USD, usando taxas de maio de 2015:

Lembre-se de que isso é para uma conta baseada em dólares americanos. Para contas baseadas em EUR, esses valores são completamente diferentes, como, por exemplo, se o EURUSD estiver sendo negociado em uma conta baseada em EUR, o lucro/prejuízo desse par, expresso em USD, precisará ser convertido para a moeda base da sua conta, o EUR.

Mais uma vez, sua corretora faz tudo isso em tempo real com as taxas atuais, a SQ não, e você precisa ajustá-lo constantemente (eu atualizo os valores dos pontos uma vez por mês), pois eles são tão flutuantes quanto qualquer par de moedas, já que nada mais é do que uma conversão constante da moeda em que cada par é nomeado para a moeda base da sua conta.

Então, como você obtém esses valores de pontos para a moeda base de sua conta? É fácil, vá para http://www.xe.com/currencyconverter/#e, na primeira linha, você selecionou a moeda em que o par que deseja negociar está denominado. Para EURUSD = USD. Para GBPAUD = AUD. Para EURAUD = AUD. Para USDCHF = CHF, para GBPCHF = CHF. Acho que você entendeu a ideia. Na segunda linha, basta selecionar a moeda base de sua conta. Agora, pressione o botão "Play" e você obterá a taxa de câmbio atual. Multiplique esse valor por 100.000 e insira-o no campo "Point Value in $" (Valor do ponto em $) no SQ Data Manager.

Vamos configurar o valor de pontos para EURAUD em uma conta de negociação baseada em USD:

1) Vá para: http://www.xe.com/currencyconverter/convert/?Amount=1&From=AUD&To=USD

2) A taxa atual é

1.00 AUD = 0.782890 USD

3) Multiplique 0,782890 por 100.000

4) = 78289, que é o valor em pontos que você insere para EURAUD no SQ Data Manager!

Pronto, agora seus backtests refletirão muito melhor a realidade. Como você pode ver, o uso do valor de ponto correto pode fazer uma diferença ENORME em seus backtests, pois alguns pares, como EURAUD, como no exemplo acima, que é negociado em uma conta de negociação baseada em USD, tem um valor de tick de apenas 0,78, o que significa que seus backtests que possivelmente estão usando um valor de tick de 1 (ou um valor de ponto de 100.000 nesse caso) terão, na realidade, apenas 78% dos valores em termos de Net Profit e Drawdown se o valor de ponto atual para a moeda base da sua conta for usado. Isso é ESPECIALMENTE importante se você criar portfólios, pois as relações entre os pares, o Net Profit e o Drawdown total do portfólio podem mudar muito se você usar o valor de ponto correto.

Boa sorte:)


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

lemming78

Assinante, bbp_participant, comunidade, cliente, 12 respostas.

Perfil da visita

8 anos atrás #130495

Ótimo... e quanto ao ouro? Ele deve ter uma lógica diferente

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #130497

Olá, Geektrader,

 

Só para deixar claro.

 

Se você deixar o valor do ponto em $ como 100.000 para todas as moedas, isso significa que todos os números (lucro, drawdown, negociação média etc.) estarão na moeda da cotação.

 

Assim, por exemplo, se a estratégia estiver usando EUR/AUD, todos os valores estarão em dólares australianos. 

 

Suponho que uma opção seria se pudéssemos ver todos os números em pips (lucro, rebaixamento, lucro médio mensal etc.), então poderíamos comparar uma estratégia com outra sem ter que fazer o que você sugere?

 

Abraço,

 

Mike

0

lemming78

Assinante, bbp_participant, comunidade, cliente, 12 respostas.

Perfil da visita

8 anos atrás #130499

Além disso, é um pouco irritante ter que atualizá-lo todo mês:( 

0

geektrader

Customer, bbp_participant, community, 522 replies.

Perfil da visita

8 anos atrás #130501

@mikeyc: sim, você está assumindo que isso é absolutamente correto. Mas como sua conta está em apenas uma moeda base, os resultados estarão errados para você. Especialmente se você criar portfólios. Sim, para comparar, você só precisa observar os valores de pip, mas para compilar um portfólio isso não ajudará muito, pois você estará negociando em uma conta com uma moeda base e, portanto, os resultados de cada par precisam ser ajustados com o valor de ponto correto para sua moeda base, pois é isso que você obterá negociando ao vivo. Se você usar 100.000 como valor de ponto para EURAUD e, portanto, assumir um valor de tick de 10$ para um movimento de 1 pip @ 1 lote nesse par, mas depois negociar esse par em sua conta baseada em USD, o valor de tick será atualmente 8$ para um movimento de 1 pip @ 1 lote, e não 10$, portanto, seus backtests estarão errados nesse caso se você não tiver ajustado o valor de ponto conforme descrito acima.

 

@lemming: basicamente, você precisa ajustá-lo todos os dias, até mesmo a cada hora, se quiser que ele esteja perfeitamente correto, mas certamente isso está longe de ser possível 🙂 Por isso, pelo menos uso valores aproximados e os atualizo uma vez por mês.


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #130502

Bem, estou vendo uma solicitação de recurso para o SQ4. Desde que você tenha os dados corretos dos pares de moedas carregados no SQ, o SQ deve saber a taxa de câmbio necessária para cada negociação e, portanto, deve ser capaz de calcular o lucro correto quase perfeitamente.

 

O que você acha?

0

geektrader

Customer, bbp_participant, community, 522 replies.

Perfil da visita

8 anos atrás #130503

Maldito Fórum, não me deixa postar uma resposta longa... Desculpe, a página que você está procurando não pode ser encontrada. Você pode tentar um dos links no menu ou no conteúdo na parte inferior.


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

matka

Cliente, bbp_participant, comunidade, 186 respostas.

Perfil da visita

8 anos atrás #130504

Pessoal, por que não automatizamos isso com base no instruments.ini ou em qualquer outra plataforma do mt4 ou de qualquer outra plataforma?

Também seria bom adicionar uma solução para um teste cruzado da mesma estratégia com ouro/prata/óleo/Forex e configurações fixas de SL/TP. Muito obrigado.

0

geektrader

Customer, bbp_participant, community, 522 replies.

Perfil da visita

8 anos atrás #130505

A propósito, um aspecto interessante a ser destacado nessa relação é que o MT4 faz isso automaticamente durante o backtesting, com base na moeda da conta que você selecionou nas propriedades do backtesting. Ele faz isso usando as últimas cotações atuais dos símbolos que você está usando quando se conectou pela última vez ao seu corretor (caso esteja executando seus backtests off-line). É por isso que seus backtests sempre parecerão um pouco diferentes a cada vez no MT4 se, por exemplo, você estiver fazendo o backtesting de uma estratégia EURAUD em uma conta baseada em USD - já que o valor do tick (valor do ponto) está mudando constantemente, é claro. Escrevi um EA para demonstrar isso:
 
https://www.sendspace.com/file/ih9aod (funciona apenas com dados de 5 ou 3 dígitos)
 
Aqui, fiz um backtest de EURAUD, selecionei USD como moeda base no MT4 "Expert Properties":
 
 
2015.05.23 18:36:31.252 EURAUD,M1: 35988 eventos de tique (36988 barras, 72922 estados de barra) processados em 15 ms (tempo total 2781 ms)
2015.05.23 18:36:31.247 2015.03.30 00:00 SQ_PointValue EURAUD,M1: 79264
 
Agora EURAUD com o euro como moeda base:
 
2015.05.23 18:37:39.584 EURAUD,M1: 35988 eventos de tique (36988 barras, 72922 estados de barra) processados em 0 ms (tempo total 0 ms)
2015.05.23 18:37:39.578 2015.03.30 00:00 SQ_PointValue EURAUD,M1: 71103
 
Teoricamente, o SQ poderia lidar com isso automaticamente da mesma forma que o MT4 faz. No entanto, Mark precisaria adicionar essa funcionalidade. É claro, porém, que você precisa ter todos os símbolos em seu gerenciador de dados para que isso funcione. Por exemplo, se você negociar EURAUD e tiver uma conta baseada em USD (o SQ precisaria permitir a seleção nesse caso, como faz o MT4), O SQ também precisará ter o símbolo AUDUSD, pois, caso contrário, não conseguirá descobrir como converter os lucros de EURAUD que ocorrem em AUD para USD.  No MT4, isso é mais simples, pois qualquer corretora tem esses símbolos no Data Manager para que isso funcione. Portanto, de fato, minha maneira de ajustar os valores dos pontos pode ser a mais "segura" ou "fácil", pois nem todos terão todos os símbolos necessários para essas conversões.
 
No entanto, se Mark implementasse isso, ele poderia fazer isso de forma perfeitamente precisa, não apenas analisando a última taxa de conversão do AUDUSD, mas analisando-a na resolução do símbolo realmente usado. Por exemplo, se estiver fazendo o backtesting do EURAUD M1 em uma conta baseada em USD, o SQ também poderá ler o histórico do AUDUSD a cada minuto do passado para obter as taxas de conversão históricas e converter os lucros/perdas do backtest do EURAUD para USD por meio do símbolo AUDUSD. No entanto, isso tornaria o backtesting muito mais lento e deixaria espaço para erros extras, o que eu, pessoalmente, gostaria de evitar e, portanto, preferiria defini-lo manualmente por meio do valor do ponto ou usando apenas a taxa de conversão mais recente do AUDUSD, como o MT4 faz (o que não custaria mais velocidade de backtesting).


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

matka

Cliente, bbp_participant, comunidade, 186 respostas.

Perfil da visita

8 anos atrás #130509

Você acha que precisamos de tal precisão no SQ? Talvez algo no meio do caminho seja suficiente?

0

geektrader

Customer, bbp_participant, community, 522 replies.

Perfil da visita

8 anos atrás #130510

Usar a última taxa de conversão seria suficiente, como o MT4 faz. Em geral, porém: mais precisão não é errado, pois quero sistemas tão estáveis e, principalmente, tão realistas quanto possível em relação à negociação em tempo real, porque é disso que se trata - não de olhar para os backtests e ficar feliz com eles 🙂 Você não tem certeza?


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

lemming78

Assinante, bbp_participant, comunidade, cliente, 12 respostas.

Perfil da visita

8 anos atrás #130511

Usar a última taxa de conversão seria suficiente, como o MT4 faz. Em geral, porém: mais precisão não é errado, pois quero sistemas tão estáveis e, principalmente, tão realistas quanto possível em relação à negociação em tempo real, porque é disso que se trata - não de olhar para os backtests e ficar feliz com eles 🙂 Você não tem certeza?

 

Olá, nerd,

 

você não respondeu à minha pergunta sobre o ouro:D

 

No entanto... o swq4 não deveria calcular todos os lucros e perdas sempre com base na taxa de câmbio "do momento"? Não faz sentido para mim converter para a taxa de câmbio de hoje algo que ganhei ou perdi há 2 anos... 

0

geektrader

Customer, bbp_participant, community, 522 replies.

Perfil da visita

8 anos atrás #130512

Não tenho ideia sobre o ouro, só opero no mercado Forex, mas não tenho tempo para verificar isso agora, desculpe.

 

Bem, faz ainda menos sentido usar apenas o valor de 100.000 dólares para cada par, pois isso está definitivamente errado. Minha abordagem chega pelo menos perto. E você está negociando seu portfólio a partir de HOJE, certo? Não de 2 anos atrás, a não ser que você tenha uma máquina do tempo?) Portanto, usar os valores de pontos de hoje e ajustá-los pelo menos uma vez por mês faz mais sentido ao negociar um portfólio ao vivo.


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

matka

Cliente, bbp_participant, comunidade, 186 respostas.

Perfil da visita

8 anos atrás #130518

Geektrader está absolutamente certo. Escolhemos nossos vencedores com base em frações do valor do Sharpe Ratio ou do Profit Factor, mas eles podem estar uma fração errados.

A solução alternativa seria publicar um patch ou um pequeno executável para que possamos usar nosso symbols.ini ou até mesmo uma planilha do Excel para calcular tudo. Precisamos urgentemente de uma ferramenta para resolver o problema de forma complexa.

Melhores cumprimentos

p.s. Lembre-se dos problemas de desempenho ao adicionar esse tipo de cálculo. Talvez ele deva ser opcional.

0

geektrader

Customer, bbp_participant, community, 522 replies.

Perfil da visita

8 anos atrás #130534

Se Mark usasse apenas a última cotação para converter da moeda de cotação para a moeda da conta, não haveria problema de desempenho.


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

Threshold

Cliente, bbp_participant, comunidade, 723 respostas.

Perfil da visita

8 anos atrás #130535

O valor do ponto em $ para cruzamentos muda com o preço do par. Qualquer coisa estática está incorreta.

0

Visualizando 15 respostas - 1 até 15 (de um total de 50)

1 2 3 4