[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 326
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
Iniziare con la definizione del problema.
- Usa lo script per rilevare la presenza di una linea sul grafico.
- Se la linea esiste, stampa il suo prezzo iniziale e finale nelle variabili; stampa i numeri delle barre (o il tempo) nelle variabili.
- Fate i calcoli necessari usando lo script.
- Stampare i risultati sullo schermo (o su un documento di testo o sul giornale di Expert Advisor)
Se non riesci a risolvere subito questi 4 problemi, inizia a imparare la lingua.
drknn! grazie! Mi informerò!!!
Non è un segreto. C'è molto scritto al riguardo. Non importa quale strumento sia stato usato per creare la storia. Il punto è aggiornare il grafico in modo che l'Expert Advisor lavori su di esso.
Questo può essere fatto per mezzo di WinAPI. È stato descritto qui molte volte. Ho scritto una biblioteca. L'ho pubblicato qui.
Contiene funzioni per controllare l'aggiornamento autonomo del grafico. Non richiede alcuno script o esperto. Ma non è per tutti. Ci sono anche funzioni disponibili per tutti per aggiornare il grafico da un Expert Advisor, uno script o un indicatore. È più difficile usarli. Perché dovete pensare a quale dei vostri programmi aggiornerà il grafico. Gli esempi sono nello script di test.
Aiuta un nerd. Solo per rispolverare l'essenza della domanda.
Ho due punti sul grafico, il punto 2 - quello più vicino alla barra zero e t.1 - quello più lontano dalla barra zero nella storia. Cerco di tracciare una linea di tendenza da questi due punti,
estendendo un segmento tra questi punti di N (variabile int RayLong) intervalli in avanti. Il codice è il seguente:
Il problema è che il punto di calcolo è fluttuante sulla data. Il prezzo è OK. La data, invece, è fine o fluttuante. La stampa mostra che questo accade quando la data di liquidazione non è nel programma - fine settimana o vacanze. Per favore, suggerite una soluzione al problema.Hai per caso una soluzione pronta per "estrarre" l'ultima riga del file di log da visualizzare nei commenti?
Aiuta un nerd. Solo per rispolverare l'essenza della domanda.
Ho due punti sul grafico, il punto 2 - quello più vicino alla barra zero e t.1 - quello più lontano dalla barra zero nella storia. Cerco di tracciare una linea di tendenza da questi due punti,
estendendo un segmento tra questi punti di N (variabile int RayLong) intervalli in avanti. Il codice è il seguente:
Il problema è che il punto di calcolo è fluttuante sulla data. Tutto è a posto con il prezzo. La data, invece, è fine o fluttuante. Uso Print per capire che questo accade quando la data di insediamento non è nel programma - fine settimana o vacanze. Per favore, consigliatemi come risolvere questo problema.Non capisco il problema. Se state disegnando per prezzo e barre Non ci sono barre di fine settimana e non fine settimana sul grafico. Quindi la tendenza e dovrebbe continuare alle prossime barre corrispondenti alle date dei giorni di trading.
O è diverso per voi?
Potreste dirmi se l'array sarà riempito con i tikets degli ordini in sospeso nel seguente codice:
int tiket[];
int SetFunk()
{
per (i=0; i<=k-1; i++)
{
ticket[i]=OrderSend(Symbol(),OP_BUYSTOP,0.01*Lots,Ask+Step*i*Point,3,Bid-S_Loss*Point,0,",10000,0,Green);
ticket[i+k]=OrderSend(Symbol(),OP_SELLSTOP,0..01*Lots,Bid-Step*i*Point,3,Ask+S_Loss*Point,0,"",10000,0,Green);
}
}
?????
vengono restituiti dei nulli quando si cerca di stampare()
Potreste dirmi se l'array sarà riempito con i tikets degli ordini in sospeso nel seguente codice:
int tiket[];
int SetFunk()
{
per (i=0; i<=k-1; i++)
{
ticket[i]=OrderSend(Symbol(),OP_BUYSTOP,0.01*Lots,Ask+Step*i*Point,3,Bid-S_Loss*Point,0,",10000,0,Green);
ticket[i+k]=OrderSend(Symbol(),OP_SELLSTOP,0..01*Lots,Bid-Step*i*Point,3,Ask+S_Loss*Point,0,"",10000,0,Green);
}
}
?????
vengono restituiti dei nulli quando si cerca di stampare()
Salve.
Ho un EA.
Come posso fare in modo che mostri i livelli di media mobile mostrati nell'immagine?
In questo momento mostra solo degli zeri.
//+------------------------------------------------------------------+//| funzione di inizializzazione dell'esperto |
//+------------------------------------------------------------------+
int init()
{
//----
//----
ritorno(0);
}
//+------------------------------------------------------------------+
//| funzione di deinizializzazione esperto |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
ritorno(0);
}
//+------------------------------------------------------------------+
//| funzione di inizio esperto |
//+------------------------------------------------------------------+
int start()
{
//----
SetLabel("MA_LABEL",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0)-0.0015,0),Red,10,20,0,20);
SetLabel("MA_LABEL2",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0),0),Red,10,50,0,20);
//----
ritorno(0);
}
//+------------------------------------------------------------------+
void SetLabel(string nm, string tx, color cl, int xd, int yd, int cr=0, int fs=9) {
se (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_LABEL, 0, 0,0);
ObjectSetText(nm, tx, fs);
ObjectSet(nm, OBJPROP_COLOR, cl);
ObjectSet(nm, OBJPROP_XDISTANCE, xd);
ObjectSet(nm, OBJPROP_YDISTANCE, yd);
ObjectSet(nm, OBJPROP_CORNER, cr);
ObjectSet(nm, OBJPROP_FONTSIZE, fs);
}
Salve.
Ho un EA.
Come posso fare in modo che mostri i livelli di media mobile mostrati nell'immagine?
In questo momento mostra solo degli zeri.
//+------------------------------------------------------------------+//| funzione di inizializzazione dell'esperto |
//+------------------------------------------------------------------+
int init()
{
//----
//----
ritorno(0);
}
//+------------------------------------------------------------------+
//| funzione di deinizializzazione esperto |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
ritorno(0);
}
//+------------------------------------------------------------------+
//| funzione di inizio esperto |
//+------------------------------------------------------------------+
int start()
{
//----
SetLabel("MA_LABEL",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0)-0.0015,0),Red,10,20,0,20);
SetLabel("MA_LABEL2",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0),0),Red,10,50,0,20);
//----
ritorno(0);
}
//+------------------------------------------------------------------+
void SetLabel(string nm, string tx, color cl, int xd, int yd, int cr=0, int fs=9) {
se (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_LABEL, 0, 0,0);
ObjectSetText(nm, tx, fs);
ObjectSet(nm, OBJPROP_COLOR, cl);
ObjectSet(nm, OBJPROP_XDISTANCE, xd);
ObjectSet(nm, OBJPROP_YDISTANCE, yd);
ObjectSet(nm, OBJPROP_CORNER, cr);
ObjectSet(nm, OBJPROP_FONTSIZE, fs);
}
double iMA( string symbol, int timeframe, int period, int ma_shift, int ma_method, int applied_price, int shift)
Non ho ancora sentito parlare dell'orario 13