Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Sì, OnChartEvent() è lo stesso per entrambe le lingue.
Grazie mille.
Ho anche scoperto che molti dei codici che sono stati scritti per MT5 ora funzionano anche su MT4.
Lo so perché ho provato molte cose in passato e le cose che non funzionavano un anno fa, funzionano ora, quindi questo dimostra che stanno ancora sviluppando attivamente entrambe le lingue.
Ho anche scoperto che molti dei codici che sono stati scritti per MT5 ora funzionano anche su MT4.
Lo so perché ho provato molte cose in passato e le cose che non funzionavano un anno fa, funzionano ora, quindi questo dimostra che stanno ancora sviluppando attivamente entrambe le lingue.
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
Ho già letto l'articolo e controllato alcuni altri codici di persone per 'CHARTEVENT_OBJECT_DRAG ' che come utilizzare da esso.
Solo il mio scopo quando trascino l'oggetto 'Stop Loss, Take Profit, Pending Orders' che potrebbe muoversi con quell'oggetto. (naturalmente tutti loro potrebbero essere separatamente)Ma purtroppo non ha senso per me. Proprio ora sto pensando che stavo perdendo il mio tempo per cose inutili. Perché il loro stile di codice è davvero diverso dal mio.
(il mio stile di codice è solo semplice - come lo stile di codice della documentazione di mql4 - che è quello che sto capendo un po' di più)
Inoltre ho visto uno script EA per modificare gli ordini (sl, tp ecc.) - e funziona senza 'CHARTEVENT_OBJECT_DRAG'... Spero che tu sappia cosa intendo.
Ora, ho davvero bisogno di aiuto solo con un semplice esempio per 'CHARTEVENT_OBJECT_DRAG' con HLine o Trendline Object. O chiaramente spiegazione o solo qualcosa di buono ( / più chiaramente ) commento.
Ho già speso un sacco di tempo e sto ancora facendo ricerche su questo. Spero di ottenere presto una risposta.
Tutto il meglio per voi.
Grazie in anticipo.
if ( Morning || Midnight )
{
// Do not turn on light just for today...
}
Questo sarà vero Mattina o Mezzanotte
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
Questo ha un caso separato per Morning e un caso separato per Midnight.
Quindi sono due cose diverse.
Ho già letto l'articolo e controllato alcuni altri codici di persone per 'CHARTEVENT_OBJECT_DRAG ' che come usare da esso.
Solo il mio scopo quando trascino l'oggetto 'Stop Loss, Take Profit, Pending Orders' che potrebbe muoversi con quell'oggetto. (naturalmente tutti loro potrebbero essere separatamente)Ma sfortunatamente questo non ha senso per me. Proprio ora sto pensando che stavo perdendo il mio tempo per cose inutili. Perché il loro stile di codice è davvero diverso dal mio.
(il mio stile di codice è solo semplice - come lo stile di codice della documentazione di mql4 - che è quello che sto capendo un po' di più)
Inoltre ho visto uno script EA per modificare gli ordini (sl, tp ecc.) - e funziona senza 'CHARTEVENT_OBJECT_DRAG'... Spero che tu sappia cosa intendo.
Ora, ho davvero bisogno di aiuto solo con un semplice esempio per 'CHARTEVENT_OBJECT_DRAG' con HLine o Trendline Object. O chiaramente spiegazione o solo qualcosa di buono ( / più chiaramente ) commento.
Ho già speso un sacco di tempo e sto ancora facendo ricerche su questo. Spero di ottenere presto una risposta.
Tutto il meglio per voi.
Grazie in anticipo.
Puoi trascinare una linea quando
OBJPROP_SELECTED ==1
Entrambi sono veri e puoi semplicemente leggere i valori usando \
Al posto di
Quasi non avevo idea di come posso scrivere codice per Stop Loss e Take Profit Drags quando ho iniziato a farlo, grazie mille amico.
Ora sento che posso fare quello che voglio dopo il tuo grande commento.
Mercato chiuso
Allora, ho già provato e ora posso ottenere 'OBJPROP_PRICE' che voglio.
Quando trascino l'oggetto 'HLine' e poi Print() si aggiorna una volta in un secondo. Perché uso EventSetTimer( 1 ).
Ma ho bisogno che Print() non si aggiorni una volta al secondo. Vorrei che Print() si aggiornasse dopo che ho smesso di trascinare.
Se mi capite per favore aiutatemi o datemi un consiglio.
Tutto il meglio per voi.
Quindi potete memorizzare il valore di OBJPROP_PRICE in un doppio e poi confrontarli.
Se differiscono si sa che il trascinamento è stato iniziato, e poi se sono di nuovo uguali si sa che il trascinamento è stato fermato.
//| 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));
}
}
}
//+------------------------------------------------------------------+
Oppure si potrebbe avviare un contatore una volta che il trascinamento è stato rilevato, ci sono molti modi per farlo,