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
Sim, o OnChartEvent() é o mesmo para ambos os idiomas.
Muito obrigado.
Também descobri que muitos dos códigos que foram escritos para o MT5 agora também funcionam no MT4.
Sei que, por ter tentado muitas coisas no passado e coisas que não funcionavam há um ano atrás, agora funcionam, o que mostra que eles ainda estão desenvolvendo ativamente ambas as linguagens.
Também descobri que muitos dos códigos que foram escritos para o MT5 agora também funcionam no MT4.
Sei que, por ter tentado muitas coisas no passado e coisas que não funcionavam há um ano atrás, agora funcionam, o que mostra que eles ainda estão desenvolvendo ativamente ambas as linguagens.
if ( Morning || Midnight )
{
// Do not turn on light just for today...
}
// I say Twice ' Do not turn... ' for ' switch ' operator - Q: Can I say ' Once '?
switch ( Today )
{
case Morning : // Do not turn on light just for today...
break;
case Midnight : // Do not turn on light just for today...
break;
} //---switch Close
Já li o artigo e verifiquei alguns códigos de outras pessoas para 'CHARTEVENT_OBJECT_DRAG ' que como usar a partir dele.
Apenas meu propósito quando arrasto o objeto 'Stop Loss, Take Profit, Pending Orders' que poderia se mover com aquele objeto. ( claro que todas elas poderiam ser separadas )Mas infelizmente isso não faz sentido para mim. Há pouco, acho que estava perdendo meu tempo com coisas inúteis. Porque o estilo de código deles é realmente diferente do meu.
( meu estilo de código simplesmente simples - como o estilo de código de documentação mql4 - que é o que eu estou entendendo um pouco mais )
Também fui visto um script EA para modificar pedidos ( sl, tp etc. ) - e funciona sem ' CHARTEVENT_OBJECT_DRAG '... Espero que você saiba o que quero dizer.
Agora, eu realmente preciso de ajuda apenas com um simples exemplo para ' CHARTEVENT_OBJECT_DRAG ' com HLine ou Trendline Object. Ou uma explicação clara ou apenas algo bom ( / mais claramente ) comentário.
Eu já gastei muito tempo e ainda estou pesquisando sobre isso. Espero receber uma resposta em breve.
Tudo de bom para você.
Obrigado de antemão.
if ( Morning || Midnight )
{
// Do not turn on light just for today...
}
Isto será verdade Manhã OU Meia-noite
switch ( Today )
{
case Morning : // Do not turn on light just for today...
break;
case Midnight : // Do not turn on light just for today...
break;
} //---switch Close
Isto tem um caso separado para o período da manhã e um caso separado para o da meia-noite.
Portanto, essas são duas coisas diferentes.
Já li o artigo e verifiquei alguns códigos de outras pessoas para 'CHARTEVENT_OBJECT_DRAG ' que como usar dele.
Apenas meu propósito quando arrasto objeto ' Stop Loss, Take Profit, Pending Orders ' que poderia se mover com aquele objeto. ( claro que todas elas poderiam ser separadas )Mas infelizmente isso não faz sentido para mim. Há pouco eu acho que estava perdendo meu tempo com coisas inúteis. Porque o estilo de código deles é realmente diferente do meu.
( meu estilo de código simplesmente simples - como o estilo de código de documentação mql4 - que é o que eu estou entendendo um pouco mais )
Também vi um script EA para modificar ordens ( sl, tp etc. ) - e funciona sem ' CHARTEVENT_OBJECT_DRAG '... Espero que você saiba o que quero dizer.
Agora, eu realmente preciso de ajuda apenas com um simples exemplo para ' CHARTEVENT_OBJECT_DRAG ' com HLine ou Trendline Object. Ou uma explicação clara ou apenas algo bom ( / mais claramente ) comentário.
Eu já gastei muito tempo e ainda estou pesquisando sobre isso. Espero receber uma resposta em breve.
Tudo de bom para você.
Obrigado de antemão.
Você pode arrastar uma linha quando
OBJPROP_SELECTED ==1
Ambos são verdadeiros e você pode simplesmente ler os valores usando {\i1}-
Em vez de
Quase não fazia idéia de como posso escrever código para Stop Loss and Take Profit Drags quando comecei a fazer isso, graças a muito homem.
Agora sinto que posso fazer o que quero depois de seu grande comentário.
Mercado Fechado
Portanto, eu já tentei e agora posso conseguir ' OBJPROP_PRICE ' qual deles eu quero.
Quando arrasto o objeto ' HLine ' e depois Imprimir() atualizo uma vez de cada vez. Porque eu uso EventSetTimer( 1 ).
Mas eu preciso do Print() não atualizo uma vez por segundo. Eu gostaria de Print() caso atualize depois que eu parar de arrastar.
Se você me entender, por favor, me ajude ou me dê conselhos.
Tudo de bom para você.
Assim, você pode armazenar o valor de OBJPROP_PRICE em um duplo e depois compará-los.
Se forem diferentes, você sabe que o arrastamento foi iniciado, e então se forem iguais novamente, você sabe que o arrastamento foi interrompido.
//| Drag Hline.mq4 |
//| Copyright 2017, Marco vd Heijden, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, Marco vd Heijden, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
double price; // price variable;
bool drag; // drag flag
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//--- create timer
EventSetTimer(1);
//--- create Hline
ObjectCreate(0,"line",OBJ_HLINE,0,0,Ask);
//--- store value
price=ObjectGetDouble(0,"line",OBJPROP_PRICE,0);
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//--- destroy timer
EventKillTimer();
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
}
//+------------------------------------------------------------------+
//| Timer function |
//+------------------------------------------------------------------+
void OnTimer()
{
//--- compare values
if(price!=ObjectGetDouble(0,"line",OBJPROP_PRICE,0))
{
drag=1; // set drag flag
price=ObjectGetDouble(0,"line",OBJPROP_PRICE,0); //store new value
}
if(drag==1)
{
if(price==ObjectGetDouble(0,"line",OBJPROP_PRICE,0))
{
drag=0; //reset drag flag
Alert(" New value set: ", DoubleToString(price));
}
}
}
//+------------------------------------------------------------------+
Ou você pode iniciar um contador uma vez que o arrasto tenha sido detectado, há muitas maneiras de fazer isso,