MODE_SPREAD - página 3

 
ToneGarot:


"Arriscado" é passado do tempo. Não é isso o que eu procuro.


Não importa qual, a dispersão não figura no cálculo.

Se uma venda é aberta a 1,0000 com um prejuízo de 1,0020, o risco é de 0,0020 e diz-se que isso equivale a um risco de 200 dólares.

Se o spread for 0,0001, o comércio atingirá a parada quando a oferta for 1,0019 e a oferta for 1,0020 com uma perda de $200 (movimento de preço 0,0019)

Se o spread for 0,0005, o comércio atingirá a parada quando a oferta for 1,0015 e a oferta for 1,0020 com uma perda de $200 (movimento de preço 0,0015)

A única diferença que o spread faz é até onde o preço tem que ir para atingir sua parada

 
GumRai:

o spread não figura no cálculo.


Meu entendimento é que as taxas da OANDA são através de spreads. Sem taxas fixas; apenas spread.

Portanto, conforme: https://www.incrediblecharts.com/trading/2_percent_rule.php

Aplicando a regra dos 2%.

  1. Calcule 2% de seu capital comercial: seu capital em risco
  2. Deduzir a corretagem na compra e venda para chegar ao seu Risco Máximo Permitido

Conforme o item 2, eu quero deduzir a taxa de corretagem. Como posso deduzir a taxa da OANDA se não através do spread?

 
ToneGarot:

Meu entendimento é que as taxas da OANDA são através de spreads. Sem taxas fixas; apenas spread.

Portanto, conforme: https://www.incrediblecharts.com/trading/2_percent_rule.php

Aplicando a regra dos 2%.

  1. Calcule 2% de seu capital comercial: seu capital em risco
  2. Deduzir a corretagem na compra e venda para chegar ao seu Risco Máximo Admissível

Conforme o item 2, eu quero deduzir a taxa de corretagem. Como posso deduzir a taxa da OANDA se não através do spread?

Não é assim que funciona! Sim, o spread é um custo, mas o risco (ou recompensa) é baseado na diferença entre os Preços Abertos e Fechados, que já são compensados pelo spread.

Como há uma diferença entre Ask e Bid (o Spread) e como o Preço Aberto (é o Ask de uma ordem de compra) e o Preço Fechado (é o Ask de uma ordem de venda), onde o preço Ask já inclui o spread (Ask = Bid + Spread), a diferença entre Open e Close já inclui o custo do spread.

Assim, o Risco (ou uma recompensa) é calculado com base na diferença entre Aberto/Fechado e já inclui o custo do spread. Você não precisa incluí-lo expressamente no cálculo. Você só precisaria incluir o custo do spread se ambos os preços, Aberto e Fechado, fossem ambos preços de Licitação (mas não são).

PS! O preço de fechamento é um fechamento manual, um Stop-Loss ou um Take-Profit.

 
Obrigado pela explicação. E graças ao GumRai, também. Vejo onde você estava querendo chegar agora.
 
ToneGarot: Estou tentando calcular o tamanho máximo de posição permitido antes de abrir uma negociação.
  1. Em código
    • Você coloca a parada onde ela precisa estar - onde a razão para o comércio não é mais válida. Por exemplo, a troca de um suporte de apoio, a parada vai abaixo do suporte.
    • Saldo da conta *%/100 = RISCO = OrderLots * (|OrderOpenPrice -OrderStopLoss| * DeltaPerlot +CommissionPerLot) (Nota OOP-OSL inclui o SPREAD)
    • NÃO utilize TickValue por si só - DeltaPerlot
    • Você deve normalizar os lotes de forma adequada e verificar contra mínimo e máximo.
    • Você também deve verificar o FreeMargin para evitar parar
  2. Use uma GUI: Indicadores:Ferramenta Gráfica Money Manager - MQL5.community traders' Forum - Página 5'Money ManagerFerramenta Gráfica' indicador por 'takycard'.
  3. Para uma posição curta você deve usar um spread médio. Eu utilizo uma média de potência para obter o spread médio máximo. Chamada por tick.
       //{ Average maximum Spread
       #define  EMA(P, C, L) ((P) + (2./((L)+1))*((C)-(P)))
       // https://en.wikipedia.org/wiki/Generalized_mean#Special_cases (Power Mean)
       #define  PMA(P, C, L, PM) MathPow(EMA(MathPow(P,PM), MathPow(C,PM), L), 1.0/PM)
    
       static const string  ms = "MaxSpread_" + _Symbol;
       static const double  PM = 10;
       double maxSpread; GlobalVariableGet(ms, maxSpread);
                            if(maxSpread == 0.0)  maxSpread = (Ask - Bid) / _Point;
       double curSpread = (Ask - Bid) / _Point;
       maxSpread = PMA(maxSpread, curSpread, Volume[1], PM);
                         GlobalVariableSet(ms, maxSpread);
    //        // Draw only bar zero, or on the first time bar one also. Don't redraw on a
    //        // reconnection (i.e. same period, but prev_calculated is zero.)
    //        static ENUM_TIMEFRAMES  spreadDrawn = PERIOD_CURRENT;
    //   for(int iSpr = int(spreadDrawn != _Period); iSpr >= 0; --iSpr)
    //      upSLSpread[iSpr] = upSL[iSpr] + maxSpread *_Point;
    //   spreadDrawn = (ENUM_TIMEFRAMES) _Period;
       //} Average maximum Spread

 


Bela ferramenta!



WHRoeder:

Para uma posição curta, você deve usar um spread médio. Eu utilizo um power mean para obter o spread médio máximo. Chamada por tick.


Power mean . . . se eu me lembro de meus dias de matemática, é uma média ponderada. Interessante.

Como o spread não é usado para calcular o tamanho do lote (como na discussão acima, OOP-OSL inclui o SPREAD), você usa o spread médio máximo como algum tipo de indicador de volatilidade para evitar a entrada de negócios em mercados movimentados?

 

ToneGarot: Since the spread is not used to calculate lot size (as per above discussion, OOP-OSL includes the SPREAD),

você usa o spread máximo médio como algum tipo de indicador de volatilidade para evitar a entrada de negócios em mercados movimentados?

  1. É utilizada uma afirmação contraditória. Para uma venda você coloca o ponto final onde ela precisa estar mais o spread. Para o rastreamento, você usa seu valor mais o spread.
  2. Sim, em meus indicadores eu adiciono uma segunda linha mostrando o valor mais o spread. Ela se amplia consideravelmente, a cada dia entre 4:30-5:30 ET e, é claro, antes das notícias.
 
Phillip:

Ele apenas informa o spread para abrir uma nova posição longa e o spread para fechar uma posição curta existente.

Você paga o spread no momento da posição aberta para posições longas. Para posições curtas, você paga o spread no momento do fechamento da posição.

Como a hora de fechamento é uma hora no futuro, você não sabe o spread que vai pagar pela posição curta até que realmente a feche.


Esta afirmação é verdadeira para todos os corretores?

Observei que meu corretor, para uma Posição Longa, abre a ordem pendente no nível Ask, mostra uma pequena perda inicial de spread, e quando Bid toca o nível de abertura, o saldo da posição está em 0.

Para Posições Curtas, abre a ordem pendente no nível Bid, mostra uma pequena perda inicial de spread, e quando Ask toca o nível de abertura, o saldo da posição está em 0.

Em ambos os casos, o spread é inicialmente calculado e cobrado, tanto para as posições Longas quanto para as Curtas.

 
Gabriele Guerrieri:

Esta afirmação é verdadeira para todos os corretores?

Observei que meu corretor, para uma Posição Longa, abre a ordem pendente no nível Ask, mostra uma pequena perda inicial de spread, e quando Bid toca o nível de abertura, o saldo da posição está em 0.

Para Posições Curtas, abre a ordem pendente no nível Bid, mostra uma pequena perda inicial de spread, e quando Ask toca o nível de abertura, o saldo da posição está em 0.

Em ambos os casos, o spread é inicialmente calculado e cobrado, tanto para as posições Longas quanto para as Curtas.

Sim, a afirmação ainda é válida e correta, mas você também deve considerar o "deslize" que pode fazer com que uma ordem abra (ou feche) um pouco abaixo do preço solicitado. O escorregamento pode ser tanto positivo (a seu favor) quanto negativo (causando mais perdas). Isto é especialmente perceptível em ordens Pendentes, mas acontece também em ordens de Mercado.

Entretanto, apenas para evitar confusão, mesmo que ignoremos o deslize, quando uma Ordem de Mercado é aberta (ou uma Ordem Pendente é acionada), ela está imediatamente em prejuízo. Portanto, mesmo que seja uma Venda ou Curta ao preço de Compra, assim que for aberta, estaremos imediatamente observando o preço atual de fechamento possível para a ordem, que é o preço de Venda, de modo que veremos uma perda imediata equivalente ao spread atual. Se considerarmos então o deslize de abertura, se for um deslize negativo, então a perda imediata é maior do que o spread, e se o deslize for positivo, a perda será menor do que o spread. Quando a ordem fechar, haverá também um escorregamento ali de maneira semelhante.

 
Fernando Carreiro :

Sì, l'affermazione è ancora valida e corretta, ma dovresti anche considerare lo "scivolamento" che può causare un ordine di aprirsi (o chiudere) leggermente sul prezzo richiesto. La scivolatura può essere sia positiva o negativa (causando più perita). Ciò è particolarmente evidente nelle ordinazioni in sospeso ma accade anche sugli ordini del Mercato.

Tuttavia, per prevenire la confusione, anche se ignoriamo lo slittamento, quando viene aperto un Ordine di Mercato (o viene attivato un Ordine in sospeso), è subito in perdita. Quindi, anche se è un Vendo o Breve al prezzo di offerta, appena si apre, stiamo guardando immediatamente l'attuale prezzo di chiusura dell'ordine, che è Ask price, assim veremos uma perda imediata equivalente à difusão atual. Se considerarmos o slittamento de abertura, se considerarmos o slittamento negativo, a perda imediata é maior do que a perda da difusão e se o slittamento for positivo, a perda é menor do que a difusão. Quando eu ordeno o chiude, ci saranno anche scivolamenti in modo simile.


Obrigado pelo esclarecimento!

Razão: