Resposta

Está fazendo o EA corretamente?

7 respostas

stearno

Cliente, bbp_participant, comunidade, 379 respostas.

Perfil da visita

11 anos atrás #110806

Elaborei o EA em anexo. Estou fazendo isso corretamente?

Tenho um indicador personalizado que fornece Entry, Stop, Profit Target e Trailing stop.

1. O EA coloca 3 ordens de parada quando o preço de entrada é preenchido no campo pelo Indy.
2. Coloque o stop e a meta de lucro em cada um deles, conforme fornecido pela Indy
3. Em seguida, quando o Indy preencher o campo ActiveStop, o EA alterará o preço de parada (ou fará uma parada móvel) e, em seguida, fará isso novamente quando o Indy atualizar o campo ActiveStop para um novo número.

Agradeço seus comentários e sua ajuda!

Stearno

Arquivo: SST EA.sqw

0

Marca Fric

Administrador, sq-ultimate, 2 respostas.

Perfil da visita

11 anos atrás #120703

Olá, Stearno,

parece correto, embora eu não conheça a estratégia original.
As três ordens de parada foram colocadas corretamente, o único problema pode ser o trailing stop - ele pode ser implementado de maneira diferente em seu sistema de negociação do que no EA Wizard.

> Então, quando o Indy preencher o campo ActiveStop, o EA alterará o preço de parada (ou fará uma parada móvel) e, em seguida, fará isso novamente quando o Indy atualizar o campo ActiveStop para um novo número.

Se você quiser alterar o stop loss somente depois que o Indy atualizar o campo ActiveStop, provavelmente deverá adicionar uma nova regra para isso.
A regra seria:
SE
(a ordem existe e iCustom(..., ActiveStop) > 0)
ENTÃO
Mover SL para iCustom(..., ActiveStop)

Com os melhores cumprimentos,

Marcar

Marcar
EstratégiaQuant arquiteto

0

stearno

Cliente, bbp_participant, comunidade, 379 respostas.

Perfil da visita

11 anos atrás #120705

Marca,
Ótimo feedback. Atualizarei essas configurações após a nova atualização com os parâmetros aumentados. Muito obrigado!

0

stearno

Cliente, bbp_participant, comunidade, 379 respostas.

Perfil da visita

11 anos atrás #120893

Você disse: "se a ordem existir". O que eu escolho para verificar essa lógica?

Procurei no Strategy Control, mas nada parecia retornar se existia uma ordem aberta por um número mágico.

Além disso, em Posição de mercado, o que significa Flat, Long, Short?

Obrigado

-Stearno

0

Marca Fric

Administrador, sq-ultimate, 2 respostas.

Perfil da visita

11 anos atrás #120906

há duas funções para verificar se a ordem está aberta:
Posição de mercado - retorna a posição de todo o EA
Order Position(MagicNumber) - retorna a posição da ordem com o número mágico fornecido

Os possíveis valores de retorno dessas funções são:
Plano - significa que não há posição aberta
Curto/longo - significa que há uma posição curta ou longa aberta

Marcar
EstratégiaQuant arquiteto

0

stearno

Cliente, bbp_participant, comunidade, 379 respostas.

Perfil da visita

11 anos atrás #120908

Ah, tudo bem. Eu estava pensando que Flat/Short/Long poderia ser o lucro/perda. Obrigado por esclarecer isso.

Então, agora, fazendo como você pediu, me deparei com mais duas perguntas:

1. Esse EA abrirá 3 ordens longas quando as condições longas forem atendidas. Se eu fizer outra guia para mover o stop loss, terei que fazer uma guia para cada ordem longa (magic Long1, Magic long2, Magic Long3) ou posso fazer uma guia que terá 3 estados Then, cada um movendo um SL para cada ordem. O motivo da pergunta é que talvez a ordem longa 1 tenha atingido a meta Profit, portanto, apenas duas ordens permanecem abertas. Se a instrução Then estiver chamando essa ordem para alterar seu SL e não existir, isso causará um problema ou ela será ignorada e passará para a próxima instrução Then. Se isso causar um problema, terei que fazer uma tabulação para cada MagicNumber para modificar apenas essa ordem. (exemplo de cada anexo com 3 em uma guia e apenas um em uma guia, o que funcionará)?

2. Além disso, a saída do indicador ActiveStop será preenchida e, em seguida, os números serão alterados. Portanto, o que eu estava pensando era que a instrução If compararia a saída Active Stop [1] com a saída Active Stop anterior [2]. Se for maior (porque a posição é longa, então a parada só aumentará), então moverá a parada para a nova saída. Essa é a melhor maneira?

Obrigado,
Jônatas

0

Marca Fric

Administrador, sq-ultimate, 2 respostas.

Perfil da visita

11 anos atrás #120917

1. Esse EA abrirá 3 ordens longas quando as condições longas forem atendidas. Se eu fizer outra guia para mover o stop loss, terei que fazer uma guia para cada ordem longa (magic Long1, Magic long2, Magic Long3) ou posso fazer uma guia que terá 3 estados Then, cada um movendo um SL para cada ordem. O motivo da pergunta é que talvez a ordem longa 1 tenha atingido a meta Profit, portanto, apenas duas ordens permanecem abertas. Se a instrução Then estiver chamando essa ordem para alterar seu SL e não existir, isso causará um problema ou ela será ignorada e passará para a próxima instrução Then. Se isso causar um problema, terei que fazer uma tabulação para cada MagicNumber para modificar apenas essa ordem. (exemplo de cada anexo com 3 em uma guia e apenas um em uma guia, o que funcionará)?

você pode colocá-la na mesma regra de negociação. Se a ordem não existir e você tentar modificar seu SL/PT, nada acontecerá, ela será simplesmente ignorada.

2. Além disso, a saída do indicador ActiveStop será preenchida e, em seguida, os números serão alterados. Portanto, o que eu estava pensando era que a instrução If compararia a saída Active Stop [1] com a saída Active Stop anterior [2]. Se for maior (porque a posição é longa, então a parada só aumentará), então moverá a parada para a nova saída. Essa é a melhor maneira?

Sim, acho que essa é a única maneira, se você precisar verificar a alteração no valor do ActiveStop.

Marcar

Marcar
EstratégiaQuant arquiteto

0

stearno

Cliente, bbp_participant, comunidade, 379 respostas.

Perfil da visita

11 anos atrás #120926

Obrigado, Mark. Muito útil.

0

Visualizando 7 respostas - 1 até 7 (de um total de 7)