7bit: idéia: você poderia usar sempre o mesmo número mágico de sempre para torná-lo compatível com tudo o mais que usa números mágicos, mas também combiná-lo com a seqüência de comentários, incluindo um número no comentário que é único para cada par de negócios. Você poderia então encontrar a outra profissão de cada par de profissões, simplesmente procurando uma profissão com a mesma magia e comentário.
Como posso encontrar um pedido por comentário e número mágico?
Eu tenho 15 gatilhos
eu não quero uma norma, digamos TP 200 SL 300
cada par de moedas terá um TP e SL diferentes Dependendo das estatísticas do gatilho
se um gatilho de maior probabilidade vier, quero identificá-lo e agir
7bit: você não precisa de magia separada para comprar e vender, você pode filtrá-los facilmente com OrderType()
e você pode filtrar os pares de moedas com OrderSymbol()
for(int pos = OrdersTotal()-1; pos >= 0 ; pos--) if (
OrderSelect(pos, SELECT_BY_POS) // Only my orders w/
&& OrderMagicNumber() == Magic.Number // my magic number
&& OrderSymbol() == Symbol() ){ // and period and symbol
//+------------------------------------------------------------------+//| Function..: SequenceNumber |//| Purpose...: Generate a sequential number. |//| Returns...: dSeqNum - next sequence number. |//| Notes.....: MT4 keeps the value of the global variable at the |//| client terminal for 4 weeks since the last access. | //| Use SequenceNumber() to generate a unique identity |//| for each order (and passed via parameter <magic> |//| number, or converted to a string and passed via the |//| parameter <comment> to the OrderSend() function) as |//| the trade servers of some brokers do modify the |//| ticket number of a pending order when it changes to |//| a market order. |//| The same sequence number could, for example, be used |//| to identify the two positions of a straddle order. |//| ******************************************************//| * If the expert has to close partial lots, then MT4 *//| * retains in the new order the contents of the *//| * OrderMagicNumber() but loses OrderComment(). *//| ******************************************************//| Sample....: string sNumber=DoubleToStr(SequenceNumber(),0); |//| if(OrderSend("EURUSD",OP_BUY,1,Ask,3,Ask-25*Point, |//| Ask+25*Point,sNumber,16384,0,Green) > 0)|//| OrderSend("EURUSD",OP_BUY,1,Ask,3,Ask-25*Point, |//| Ask+65*Point,sNumber,16384,0,Green); |//+------------------------------------------------------------------+double SequenceNumber() {
double dSeqNum=1, d;
string sName="SequenceNumber";
while(GlobalVariableCheck("Semaphore")) d+=0;
GlobalVariableSet("Semaphore",1);
if(GlobalVariableCheck(sName)) dSeqNum=GlobalVariableGet(sName)+1;
GlobalVariableSet(sName,dSeqNum);
GlobalVariableDel("Semaphore");
return(dSeqNum);
}
Obrigado, finalmente posso revisitar este tópico e estou experimentando isto. Eu não entendo a amostra. Por que OrderSend > 0, então execute outro OrderSend? Por favor, ajude-me!
Percebi que o Número Sequencial irá aumentar a cada pedido e que eu poderia atribuí-lo para comentar ou número mágico, o que é ótimo. A melhor parte é que eles permanecem no sistema mesmo depois que eu reiniciar o MT4.
Entretanto, como posso identificá-los e compará-los mais tarde?
idéia: você poderia usar sempre o mesmo número mágico de sempre para torná-lo compatível com tudo o mais que usa números mágicos, mas também combiná-lo com a seqüência de comentários, incluindo um número no comentário que é único para cada par de negócios. Você poderia então encontrar a outra profissão de cada par de profissões, simplesmente procurando uma profissão com a mesma magia e comentário.
Como posso encontrar um pedido por comentário e número mágico?
Eu tenho 15 gatilhos
eu não quero uma norma, digamos TP 200 SL 300
cada par de moedas terá um TP e SL diferentes Dependendo das estatísticas do gatilho
se um gatilho de maior probabilidade vier, quero identificá-lo e agir
trigger1 eur/usd 100 prob: 94%, usd/jpy 300 prob:74% eur/jpy 200 prob.100%
se o gatilho 1 for trocado por um dos pares eur/usd não será mais trocado por esse par para esse gatilho
ainda quero trocar por trigger2 trigger3 e (trigger1 apenas par diferente)
y não
você não precisa de magia separada para comprar e vender, você pode filtrá-los facilmente com OrderType()
obrigado por sua ajuda
você não precisa de magia separada para comprar e vender, você pode filtrá-los facilmente com OrderType()
Eu uso uma RANGE de números mágicos, portanto posso usar diferentes métodos de SL para o comércio.
por exemplo, MAGIC_NUMBER_BASE = 1234500
e depois usar 'offset' de 0-99 para agrupar meus negócios por tipo SL. Eu então uso código como
if(OrderMagicNumber() < MY_MAGIC_LO || OrderMagicNumber() > MY_MAGIC_HI)para encontrar minhas profissões (na verdade esse código é para EXCLUIR minhas profissões!)
Jon esta função emite números únicos
Obrigado, finalmente posso revisitar este tópico e estou experimentando isto. Eu não entendo a amostra. Por que OrderSend > 0, então execute outro OrderSend? Por favor, ajude-me!
Percebi que o Número Sequencial irá aumentar a cada pedido e que eu poderia atribuí-lo para comentar ou número mágico, o que é ótimo. A melhor parte é que eles permanecem no sistema mesmo depois que eu reiniciar o MT4.
Entretanto, como posso identificá-los e compará-los mais tarde?
Como cada conjunto de pedidos é colocado:
ou seja, eu negocio em pares, pedidos 1 & 2, depois pedidos 3 & 4, e assim por diante....
Pedido 1 - Sequência #1
Ordem 2 - Sequência #2
Ordem 3 - Sequência #3
Ordem 4 - Sequência #4
Ordem 5 - Sequência #5
Ordem 6 - Sequência #6
Agora que eles têm um número sequencial único que incrementa,
Como selecioná-los e compará-los?
Eu gostaria de selecionar e comparar
Pedidos 1 & 2, depois Pedidos 3 & 4, depois Pedidos 5 & 6, e assim por diante ...
Obrigado de antemão!
... Continuação da resposta acima
Ou talvez eu pudesse controlar quando o número de sequência aumentaria?
ou seja, após cada conjunto de ordens? Como depois de 2 ordens.
Então, ao selecionar e comparar, eu poderia apenas selecionar ordens com o mesmo número seqüencial.
Como codificar isso?
Obrigado!
Salve Theese in an Array[][]
exemplo.
Comércio 1
TicketArray [1] [0] = Ticket0;
TicketArray [1] [1] = Ticket1;
Comércio 2
TicketArray [2] [0]
TicketArray [2] [1] [2] [3]
Comércio 3
TicketArray [3] [0]
TicketArray [3] [1]
... ... E assim por diante