Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 730

 
evillive:
PeriodSeconds() è il nome della funzione incorporata, molto probabilmente è una chiamata errata nel codice, mostra la linea 25.
Non una chiamata, ma una descrizione/dichiarazione di una funzione all'interno di un'altra funzione, che è inaccettabile - questo è ciò che dice il compilatore.
 

Il testo e l'immagine qui sotto sono tratti da una descrizione di uno degli indicatori su internet. Per quanto ho capito si tratta di EMA di primo e secondo grado. Potete per favore darmi la formula del secondo grado o i link alla descrizione di temi simili su questo forum. Grazie mille.


Il principio del CONNECT (smoothing)

Se X1 è il valore del grafico (supponiamo che fluttui da meno X1 a più X1), il punto X5 con coordinate (0;0) è l'ultimo punto della linea mediata, allora il valore di X2 sarà ottenuto dalla media del primo grado o da una linea (leva archimedea - perdiamo in distanza ma guadagniamo in forza), e il valore di X3 sarà ottenuto dalla media del secondo grado o dalla parabola quadrata. Si può notare che una parabola fornisce una linea di media più liscia. All'aumentare del grado e della lunghezza del braccio, la scorrevolezza aumenta. Da un punto di vista meccanico, il cambiamento di X1 quando si fa la media al primo grado è associato a un cambiamento di velocità, e quando si fa la media al secondo grado a un cambiamento di accelerazione. Come risultato della media N ultimi punti sono correlati dall'equazione corrispondente.

Principio dell'INTERPOLAZIONE LINEARE

È noto che sono necessari almeno due punti per disegnare una linea retta, tre punti per disegnare una parabola quadrata, quattro punti per disegnare una parabola cubica, ecc.Oppure X4 e X5 per l'interpolazione di primo grado e X4, X5 e X6 per l'interpolazione di secondo grado. Affinché i punti interpolati formino una linea ragionevolmente liscia, il grado o la spalla dell'interpolazione devono essere inferiori al grado o alla spalla della media. Se il grado e la leva sono uguali, otterremo il valore iniziale di X1. (L'indicatore lavora sui punti dell'ultima barra di apertura)

La linea retta è una progressione aritmetica per ottenere il terzo punto dopo i primi due:

U3= (U2-U1)+U2 = 2*U2 - U1 è un'equazione reciproca di primo grado per punti equidistanti. (Simile all'equazione dopo aver ridotto tutti i coefficienti dell'equazione di Lagrange)


Principio dell'INTERPOLAZIONE TRIGONOMETRICA.

Usiamo la formula per il seno di un angolo doppio: Sin 2a = 2* Cos a* Sin a . Geometricamente, possiamo dimostrarlo come segue: Sin 2a = 2* Cos a* Sin a - 0

E rispettivamente: Sin 3a = 2* Cos a* Sin 2a - Sin a ecc. dove Cos a è il coseno dell'angolo di un passo e Sin è essenzialmente il valore del grafico corrispondente. Allora l'equazione di ritorno di primo grado per un angolo di seno vicino a zero assomiglia a Y3 = 2* Cos a * Y2 - Y1 . Vediamo una completa analogia con l'equazione di una linea retta. Nell'indicatore il passaggio dalle equazioni trigonometriche alle equazioni lineari è fornito assegnando un periodo uguale a uno. Cos 360 è uguale a 1, allora l'equazione degenera in una lineare.
 

L'immagine non è apparsa nel post precedente.

 
evillive:
PeriodSeconds() è il nome della funzione incorporata, molto probabilmente una chiamata sbagliata nel codice, mostra la linea 25.

Sto cercando di usare PeriodSeconds(), per cancellare un ordine pendente su una nuova barra del timeframe corrente.

Se sapete come farlo correttamente, per favore consigliatemi.

//----глобальные переменные 
int PeriodSeconds(ENUM_TIMEFRAMES  period=PERIOD_CURRENT);
//----ф-ия start

int ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,Ask,3,stoploss,takeprofit,"MAxx",MAGICMA,PeriodSeconds(),clrGreen);
 

Buona sera!

Come faccio a specificare i parametri esterni dello script, in modo che quando viene eseguito sia predefinito al venerdì della settimana corrente, ora 23:00

Esempio

2014.10.10 23:00:00

//------- Parametri esterni dello script -----------------------------------------+

extern datetime DT = ?

 
skyjet:

Sto cercando di usare PeriodSeconds(), per cancellare un ordine pendente su una nuova barra del timeframe corrente.

Se conoscete il modo corretto, per favore consigliatemi.

//----глобальные переменные 
int PeriodSeconds(ENUM_TIMEFRAMES  period=PERIOD_CURRENT);
//----ф-ия start

int ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,Ask,3,stoploss,takeprofit,"MAxx",MAGICMA,PeriodSeconds(),clrGreen);
//----глобальные переменные 
int  per; 
per=PeriodSeconds(PERIOD_CURRENT); // вызывать там где надо по алгоритму. Нельзя объявлять предопределённую функцию, только вызывать с нужными параметрами и значение присваивать пользовательской переменной

int ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,Ask,3,stoploss,takeprofit,"MAxx",MAGICMA,TimeCurrent()+600,clrGreen); //срок истечения  отложенного ордера не может быть меньше 10 минут с момента его выставления

 
Da qualche parte è stato menzionato un articolo o qualcos'altro con l'aiuto di metodi di programmazione di Expert Advisors che lavorano con una coppia su un conto, sul quale ci sono altri o simili Expert Advisors, ma con altre coppie e, di conseguenza, con altri valori di parametri. Non si può fare solo il controllo dei simboli e dei maghi, perché non si può fare tutto in loop. Ho guardato tutti gli articoli e non l'ho trovato nella ricerca. Forse qualcuno mi darà un suggerimento! Grazie!
 
borilunad:
Da qualche parte è stato menzionato un articolo o qualcos'altro con l'aiuto di metodi di programmazione di Expert Advisors, lavorando con una coppia su un conto, sul quale ci sono altri o simili Expert Advisors, ma con altre coppie e, di conseguenza, con altri valori di parametri. Non si può fare solo il controllo dei simboli e dei maghi, perché non si può fare tutto in loop. Ho guardato tutti gli articoli e non l'ho trovato nella ricerca. Forse qualcuno mi darà un suggerimento! Grazie!
Boris, puoi spiegarti meglio? È una specie di guazzabuglio.
 
Salve, potete aiutarci, per favore? Supponiamo di avere diverse MA (3,4,...,10,...) con periodi diversi. Come trovare la MA con il valore più grande (più piccolo) sulla barra corrente? Grazie.
 
artmedia70:
Boris, puoi spiegarti meglio? È un po' confuso.
Grazie per la risposta, Artyom! Sto facendo un esperto ora, non richiedendo molto margine di sicurezza. Ho provato a mano su alcune coppie e funziona bene! Ecco perché voglio impostareun EA per ogni coppia, ma non devono interferire tra loro ed essere completamente indipendenti, anche i loro orari di lavoro possono non coincidere! Ottimizzerò ognuno di loro separatamente nel tester. Cos'altro mi serve per capire che saranno così amanti della libertà! ;)