1. Há algumas ordens de compra abertas e uma ordem de compra pendente é feita. todas as ordens estão no mesmo par de moedas. como um EA selecionará apenas a última ordem aberta para verificar seus limites de parada?
2. cada ordem aberta foi colocada a preços diferentes com tp 20. é possível para a EA modificar todas as ordens abertas exceto a última, e alterar seus limites de parada para os limites de parada da última ordem aberta?
EXEMPLO:
Sr type price tp
1 buy 1.239501.23750
------------------------------
# buylimit 1.237501.23550//////////////////////////////1 buy 1.239501.23550// tp modified and now equal to 2nd tp2 buy 1.237501.23550// 2nd tp
------------------------------
# buylimit 1.235501.23350//////////////////////////////1 buy 1.239501.23350// tp modified and now equal to 3rd tp2 buy 1.237501.23350// tp modified and now equal to 3rd tp3 buy 1.235501.23350// 3rd tp
------------------------------
# buylimit 1.233501.23150
Agora o novo editor aceita os dois, mas... qual deles trabalhará o mesmo como a linha em destaque? se ambos forem verdadeiros, então qual deles devo usar? (mais conveniente?)
PS: O código abaixo também é aceito pelo novo editor...
if((SignalS & AAA) !=0)
O novo editor aceita os três, mas... qual deles trabalhará da mesma forma como a linha destacada? se todos forem verdadeiros, então qual deles será mais conveniente para mim?
qgmql: O novo editor aceita os três, mas... qual deles trabalhará da mesma forma como a linha destacada? se todos forem verdadeiros, então qual deles será mais conveniente para mim?
WHRoederi encontrou seu código (selecione a última ordem de mercado) e adicionou linhas destacadas para verificar seu preço tp e para definir o mesmo preço tp em ordens anteriores:
int PositionIndex; // <-- this variable is the index used for the loopint TotalNumberOfOrders; // <-- this variable will hold the number of orders currently in the Trade pooldouble Ord_TP=0;
TotalNumberOfOrders = OrdersTotal(); // <-- we store the number of Orders in the variablefor(PositionIndex = TotalNumberOfOrders - 1; PositionIndex >= 0 ; PositionIndex --) // <-- for loop to loop through all Orders . . COUNT DOWN TO ZERO !
{
if( ! OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) continue; // <-- if the OrderSelect fails advance the loop to the next PositionIndexif( OrderMagicNumber() == MagicNo // <-- does the Order's Magic Number match our EA's magic number ?
&& OrderSymbol() == Symbol() // <-- does the Order's Symbol match the Symbol our EA is working on ?
&& ( OrderType() == OP_BUY// <-- is the Order a Buy Order ?
|| OrderType() == OP_SELL ) ) // <-- or is it a Sell Order ?if(OrderTakeProfit()>0)Ord_TP = OrderTakeProfit(); break;if(OrderTakeProfit() == Ord_TP) continue;OrderModify(OrderTicket(),0,0,Ord_TP,0,CLR_NONE);//if ( ! OrderClose( OrderTicket(), OrderLots(), OrderClosePrice(), Slippage ) ) // <-- try to close the order//Print("Order Close failed, order number: ", OrderTicket(), " Error: ", GetLastError() ); // <-- if the Order Close failed print some helpful information
} // end of For loop
(Todos os tipos de ordens de mercado+de gasto são apenas compra, não venda ou apenas venda, não compra e eu quero que o tp de todas as ordens de mercado seja alterado toda vez, quando uma nova ordem de mercado for aberta).
ISTO É REALMENTE DIFÍCIL PARA MIM, MAS QUERO FAZÊ-LO :(
As coisas estão ficando complicadas para mim. Acho que eu deveria escrever código desde o início. e colarei cada parte do código aqui. talvez eu pudesse entender isso melhor.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Este código está bem? se não estiver, por favor, escreva algum código em vez de link, ainda estou confuso.
NÃO https://www.mql5.com/en/forum/133792/page3#550831
dá valor pip para um lote negociado em um símbolo específico
1. Há algumas ordens de compra abertas e uma ordem de compra pendente é feita. todas as ordens estão no mesmo par de moedas. como um EA selecionará apenas a última ordem aberta para verificar seus limites de parada?
2. cada ordem aberta foi colocada a preços diferentes com tp 20. é possível para a EA modificar todas as ordens abertas exceto a última, e alterar seus limites de parada para os limites de parada da última ordem aberta?
EXEMPLO:
Alguma confusão com...
O antigo editor aceita as linhas em destaque, mas o novo editor dá o aviso "Expressão não booleana".
Eu tentei então...
Agora o novo editor aceita os dois, mas... qual deles trabalhará o mesmo como a linha em destaque? se ambos forem verdadeiros, então qual deles devo usar? (mais conveniente?)
PS: O código abaixo também é aceito pelo novo editor...
O novo editor aceita os três, mas... qual deles trabalhará da mesma forma como a linha destacada? se todos forem verdadeiros, então qual deles será mais conveniente para mim?
(SignalS & AAA) !=0Operação
Descição
Ordem de execução
()
[]
.
Função Chamada
Referência a um elemento de matriz
Referência a um elemento da estrutura
Da esquerda para a direita
!
~
++
--
(tipo)
tamanho do
Negação lógica
Negação bitwise (complemento)
Mudança de sinal
Incremento por um
Diminuir por um
Digitação
Determinação do tamanho em bytes
Da direita para a esquerda
*
/
%
Multiplicação
Divisão
Divisão de módulos
Da esquerda para a direita
+
Acréscimo
Subtração
Da esquerda para a direita
<<
>>
Turno esquerdo
Turno certo
Da esquerda para a direita
<
<=
>=
Menos de
Menor ou igual
Maior do que
Maior ou igual
Da esquerda para a direita
==
!=
Igual
Não igual
Da esquerda para a direita
&
Bitwise E operação
Da esquerda para a direita
^
Bitwise exclusivo OR
Da esquerda para a direita
|
Operação Bitwise OR
Da esquerda para a direita
&&
Lógica E operação
Da esquerda para a direita
||
Operação Lógica OU
Da esquerda para a direita
?:
Operador condicional
Da direita para a esquerda
=
*=
/=
%=
+=
-=
<<=
>>=
&=
^=
|=
Atribuição
Multiplicação com atribuição
Divisão com atribuição
Módulo com atribuição
Adição com atribuição
Subtração com atribuição
Turno esquerdo com atribuição
Turno certo com atribuição
Bitwise AND com atribuição
Exclusivo OU com atribuição
Bitwise OR com atribuição
Da direita para a esquerda
,
Vírgula
Da esquerda para a direita
WHRoeder i encontrou seu código (selecione a última ordem de mercado) e adicionou linhas destacadas para verificar seu preço tp e para definir o mesmo preço tp em ordens anteriores:
Uma linha extra...
Por favor, oriente, se eu estiver errado.
(Todos os tipos de ordens de mercado+de gasto são apenas compra, não venda ou apenas venda, não compra e eu quero que o tp de todas as ordens de mercado seja alterado toda vez, quando uma nova ordem de mercado for aberta).
ISTO É REALMENTE DIFÍCIL PARA MIM, MAS QUERO FAZÊ-LO :(