[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 793
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
Não estamos abrindo a Buy at Ask price ???????
Foi o que eu escrevi: "Ospedidos de compra são abertos a preço de pedido".
Mas na tabela você vê o preço da Licitação.
Foi o que eu escrevi: "Os pedidos de compra são abertos a preço de pedido".
Mas na tabela você vê o preço da Licitação.
Não estamos abrindo uma Buy at Ask ??????? E não pode haver um spread de 60 pips (se você o tomar depois do intervalo), e se você o tomar antes ... então o spread no EUR de 325 pips é equivalente a ... :)
sua foto não mostra pontos.
sua foto não mostra os pontos.
Tenho sempre os dois preços na tabela... Nos ajustes dos terminais habilitei a exibição de Ask`ts por F8. E corrigiu um pouco o post anterior sobre a propagação - não pode ser.
Mas o preço Ask não é visível nos bares.
Sobre a propagação. É um spread de cinco dígitos? Se sim, spread alargado em notícias + slippage = são 6 pips completos (60 pips de cinco dígitos) para você
Mas o preço Ask não é visível nos bares.
Sobre a propagação. É um spread de cinco dígitos? Em caso afirmativo, então spread extendido em notícias + slippage = são 6 pips (60 pips de cinco dígitos) completos
Se eu entendi seu problema corretamente, você não deve ser guiado pelo horário de fechamento do pedido. É preciso começar no início do bar no qual o sinal para abrir e a posição foi aberta. O que eu faria, pessoalmente, é o seguinte:
1) criar uma variável do tipo data/hora onde eu entraria o valor Tempo[0] se o pedido for feito com sucesso;
2) na função init(), inicializar esta variável com valor "0". Prefiro uma inicialização explícita, já que é mais clara ao revisar o código;
3) quando aparecem as condições para abrir uma posição, antes de enviar o pedido de OrderSend(...), compare o valor desta variável com o valor Time[0] e se não forem iguais, envie um pedido.
4) se a posição fosse aberta, eu guardaria o valor de Tempo[0] na mesma variável.
Obrigado pelo esclarecimento - mas você acha que ao invés de comparar com o valor de Tempo[0], tente dar essa tarefa antes do pedido de OrderSend(...) : verifique se há um StopLoss-y fechado na barra atual? Então eu preciso inserir a função StopLoss() que funcionará com a variável StopLoss que eu anunciei? Ou NÃO é POSSÍVEL, por uma questão de princípio? É importante para mim que uma nova posição não seja aberta no bar que tenha pegado uma perda, mesmo que ela corresponda aos parâmetros da abertura.
extern double Stoploss =1000;
A questão é que os fatores de tempo devem ser considerados por último - muitas vezes eles escorregam - ou melhor, a interpretação de uma ordem de alguma forma se revela diferente (ambíguo).
Mas o preço Ask não é visível nos bares.
Sobre a propagação. É um spread de cinco dígitos? Se sim, então a propagação ampliada em notícias + deslizamento = isso é 6 pips (60 pips de cinco dígitos) cheios
Também, na minha opinião, pode haver um "grampo de cabelo", posteriormente limpo :)), mas "guardado na memória" de prazos menores, aos quais você não chegará...
E a questão dos testes sobre a história :
pode um Expert Advisor (um simples!) - ...) sobre o mesmo período da história, com os mesmos parâmetros dão resultados completamente diferentes?
A única coisa que fiz, entre estes dois testes, foi atualizar o arquivo de citações. e isso poderia ter levado a tal resultado!? - então acontece que a história toda é uma besteira!?
Alguém pode me dizer por que a MathRound() se comporta de forma estranha. Valores grandes contam, valores pequenos não...
Existe um código simples para aumentar os valores de algumas variáveis em 10%:
Os valores calculados são registrados. Se todas as linhas, exceto a primeira, estiverem divididas por 10, então esta conta como número 100 e não há nenhum problema com ela:
2010.08.11 19:16:20 2009.01.02 10:34 Sergitas_v1.01 EURUSD,M5: Função de cálculo: SLs = 11 e TPs = 66, TStartS = 60, TStop.Sell = 20, TStopLastPosS = 60, TStop.SellLP = 25
O que está marcado em verde é o que conta na primeira linha do código.
Mas se você colocar divisão por 100 (como deve ser)
... então todas as linhas, exceto a superior, não contam em absoluto - os valores iniciais permanecem, como se não tivessem sido adicionados
dez por cento:
2010.08.11 19:41:03 2009.01.02 10:34 Sergitas_v1.01 EURUSD,M5: Função de cálculo: SLs = 11 e TPs = 66, TStartS = 30, TStop.Sell = 10, TStopLastPosS = 30, TStop.SellLP = 15
Ajudem-me a entender o que e onde diabos está... :)