[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 386

 
Integer:

Non capirà))) Ho risolto questo problema in circa questo stile. È bello avere qualcuno che capisce l'essenza del compito. Solo che ho ancora una coda, in quale ordine i compiti hanno iniziato ad essere eseguiti, e in quale ordine vengono eseguiti ulteriormente in un cerchio.

Bene allora, invece degli exp exps stessi sono definiti con un indice, quindi la coda sarà dal tempo della prima esecuzione.
 
Zhunko:

Il MACD mostra la velocità in pip nel tempo. Se per velocità di cambiamento intendi l'accelerazione, dovresti prendere la derivata del MACD.

Si ottengono risultati interessanti. Attualmente sto scrivendo un esperto su questo argomento.


Sciocchezze! Quindi bisogna prendere la derivata per conoscere l'accelerazione piuttosto che la velocità, e bisogna prendere la macd per conoscere la velocità, ma perché non la derivata di qualcosa?
 
FAQ:

Bene, allora, invece degli handle, le espansioni stesse sono definite con un indice, quindi la coda sarà per tempo della prima esecuzione.


Sì, le maniglie non sono utilizzate.
 
Zhunko:

Il MACD mostra la velocità in pip nel tempo. Se per velocità di cambiamento intendi l'accelerazione, dovresti prendere la derivata del MACD.

Vengono fuori risultati piuttosto interessanti. Ora sto scrivendo un esperto su questo argomento.


È il modo giusto per farlo?

for(int i=0; i<limit; i++) velocity[i]=(Close[i]-Close[i+1])/Point;
for(i=0; i<limit; i++) acceleration[i]=velocity[i]-velocity[i+1];

Non sono molto bravo, quindi se non è corretto, vi prego di scusarmi. Mostra la velocità in pip al minuto e l'accelerazione in pip al minuto. O mi sbaglio?

Oh, ho dimenticato di spiegare. Dato che Δt=1, non ho diviso per uno, pensavo fosse chiaro.

 

Questo...

Penso che Arles abbia risolto la risposta alla domanda, dato che non sono ancora in grado di afferrare immediatamente il succo della soluzione. Ma questo è perché sono un principiante e ho bisogno di più tempo per imparare prima la teoria e poi provare la pratica. Ma cercherò di padroneggiarlo.

Zhunko:

Sergey, quali questioni non hai risolto? Se questo:

Chiripaha:

Cioè, rispondendo alla domanda di Arles, se un Expert Advisor ha registrato ordini e si è "appisolato" per un po', in questo momento, l'altro EA non ha superato i limiti dei fondi assegnati (supponiamo l'80% del deposito - entrambi gli EA avranno questa dimensione) e piazzerà un ordine (entrare nel mercato). E quando il 1° riprende il lavoro (e il terminale di gestione del denaro è già stato calcolato il giorno prima), anche lui/lei aprirà un affare che supera i limiti stabiliti dall'Expert Advisor?

Se questo sistema (ipoteticamente) viene moltiplicato per diversi EA, allora può essercene uno in cui il Risk-Management sarà in un sistema critico?

Ho capito bene questo multithreading? - Se è così, è certamente un casino dal punto di vista finanziario. Ma, poiché la probabilità che questo accada è bassa nei piccoli conti, questo è solo ipotetico. E su conti più grandi, probabilmente scriveranno qualcosa loro stessi. Ma, ancora, si scopre che questo è vero?

E ho una domanda - questa è una posizione ufficiale o sono solo speculazioni ed esperimenti come i miei?

Poi c'è il codice a pagina 378. Eccolo di nuovo:

Dove il ritardo è "lavoro simulato" inserire un riferimento al deposito o ad un'altra risorsa.

Potete trasformare questo blocco di sincronizzazione in una funzione e metterlo in una libreria. Ci sarà una funzione sincrona di accesso al deposito da qualsiasi Expert Advisor.


Giusto, per domanda irrisolta intendevo esattamente questa lista di domande.

Il fatto che tu abbia trovato una soluzione - è molto buono e capisco la tua posizione e la accetto. Ma - come ho scritto proprio nel post successivo a quello con le domande - hai proposto la seguente soluzione, quando puoi creare un programma, in cui queste domande saranno risolte dall'autore (programmatore) del programma. E questo è un bene. Ma questo è il passo successivo. Il fatto che tu abbia sezionato questo passo in dettaglio nella discussione è anche molto buono per la comprensione e ancora di più per i principianti inesperti come me. E il fatto che ora hai offerto esempi pratici di come risolverlo. - Meraviglioso. Cioè avete così offerto una soluzione a questo problema (confermando indirettamente la sua esistenza e la necessità di una soluzione). MA!

Dopo tutto, quando Arles chiedeva, non intendeva robot corretti che possono essere corretti in questo modo, ma intendeva che quando lui o migliaia di altri trader usano EAs dove questi problemi non sono ridotti, ma progettati per una semplice applicazione su una coppia di valute, non tengono conto che ci saranno molti altri EAs (o anche questo stesso robot) su altri grafici. In questo caso può portare al caos (con un enorme flusso di informazioni, per esempio, durante i comunicati stampa, quando ci sono una quantità enorme di accordi in tutto il mondo) nella sequenza di soluzione dei compiti. Poiché il parallelismo e il multithreading sono l'antipodo della coerenza, e di conseguenza, questa stessa coerenza sarà rotta (senza soluzione speciale). Ma di nuovo... Una soluzione ad hoc non è altro che un ritorno alla coerenza. Poiché la coda, il termine già menzionato qui, non è altro che una sequenza.

E da qui la domanda - È necessario creare un multithreading per poi rimetterlo in coda? - Ma questo è un altro argomento. Anch'io sono andato oltre nel considerare il problema originale. Tu sei diverso da te in una cosa - stai già cercando di offrire varianti di soluzione, mentre io posso arrivare solo a una formulazione di domanda, come è il limite di un principiante.

E copierò lo schema che avete suggerito per la soluzione, e cercherò di smontarlo e padroneggiarlo nei dettagli. Ma non sono sicuro che sarò in grado di farlo rapidamente. Ma finora, francamente parlando, cerco di semplificare il più possibile gli algoritmi di soluzione. E usare soluzioni complesse solo lì dove non c'è altra soluzione al problema (compreso l'approccio non software - dopo tutto, il problema può essere risolto al di là del programma per computer).

====================================

Cioè, in altre parole. - Se non c'è un blocco della soluzione che suggerisci, allora, quando si usano molti di questi EA, può verificarsi la situazione descritta nella domanda che hai posto sul Risk-Management?

Chiripaha:

... Se un EA ha contato gli ordini e per un certo tempo "ha fatto un pisolino", in questo momento un altro EA non ha superato i confini dei fondi assegnati (per esempio, 80% del deposito - in entrambi gli EA questa dimensione sarà) e piazzerà un ordine (entrare nel mercato). E quando il 1° riprende il lavoro (e il terminale di gestione del denaro è già stato calcolato il giorno prima), anche lui/lei aprirà un affare che supera i limiti stabiliti dall'Expert Advisor?

Se questo sistema (ipoteticamente) viene moltiplicato per diversi Expert Advisors, allora può essercene uno in cui il Risk-Management sarà in un sistema critico?

Lasciatemi spiegare un po' di più. Non sono sicuro che sia una situazione critica. Quindi lo sto considerando ipoteticamente per ora. Dal momento che la velocità di risoluzione dei problemi è alta e le soluzioni nel computer probabilmente "voleranno attraverso" l'ampio canale di bitrate del computer. - Ma forse mi sbaglio su questo, perché secondo Arles - ottiene solo 2 ordini per turno. Quindi c'è un problema.

 
gyfto:

Oh, ho dimenticato di chiarire. Dato che Δt=1, non ho diviso per uno, pensavo fosse chiaro.
Questo delta sarà sempre uno o può essere variabile? Se non è un parametro costante, è meglio metterlo (il parametro) nella formula.
 
Integer:

Si tratta di un'unità di accesso atomica e senza sincronizzazione. Non ha senso chiamare solo il deposito in questo modo. La chiamata di una qualsiasi delle funzioni di parametro di deposito sarà atomica da sola, senza alcun ritocco. Se lo fai atomicamente, tutto il lavoro dell'Expert Advisor. È così che si risolvono i problemi: si pensa di aver fatto qualcosa, ma in realtà è un'illusione.

Ho pensato che finalmente avresti capito il senso di quello che ho detto durante la notte... :-( Purtroppo non è successo.

Ci sono due modi di programmare questo compito. Una complicata, come la tua, e una semplice, come la mia. Se avete bisogno di mettere in coda gli esperti con i vostri thread, è più facile fare tutto in un solo esperto (thread) e non sincronizzarli.

Si tratta di sincronizzare l'accesso a una risorsa. Il mio codice è sufficiente. Allo stesso tempo, gli Expert Advisors lavorano indipendentemente e in parallelo.

Intero:

Sciocchezze! Quindi bisogna prendere la derivata per conoscere l'accelerazione invece della velocità, e bisogna prendere il mcd per conoscere la velocità, ma perché non la derivata di qualcosa?
Non capisco la domanda.
 
Zhunko:

Pensavo che finalmente avresti capito il senso di quello che ho detto durante la notte... :-( Purtroppo non è successo.

Ci sono due modi di programmare questo compito. Una elaborata, come la tua, e una semplice, come la mia. Se avete bisogno di mettere in coda gli esperti con i vostri thread, è più facile fare tutto in un solo esperto (thread) e non sincronizzarli.

Si tratta di sincronizzare l'accesso a una risorsa. Il mio codice è sufficiente. Allo stesso tempo, gli Expert Advisors lavorano indipendentemente e in parallelo.

Non capisco la domanda.


Junko, sei d-i-B*&%#o^i=d. Come puoi essere così stupido? Non avete nemmeno il cervello per capire il problema. È inutile parlare con te, non capisci proprio niente. Ma la posizione che assumete... come se sapeste e capiste tutto, ma non sapeste e non capiste nulla, codificando al livello di un nubo-lamer dell'asilo. E la vostra comprensione di tutto è allo stesso livello. Ma il tuo ego...

Junko, te lo spiegano anche e tu non lo capisci nemmeno in questo caso, sembra una paralisi cerebrale.

 
Zhunko:

Non capisco la domanda.


Questo dice tutto!
 
Chiripaha:
Questo delta sarà sempre uno o può essere variabile? Se non è un parametro costante, è meglio metterlo (il parametro) nella formula.


Sì, sarà sempre uno, perché
Time[i] - Time[i+1] = const = 1
È un'altra questione, se lavoriamo con tick invece di M1 TF, allora sì - da bin a bin Δt sarà variabile.
Zhunko:

Non capisco la domanda.

Credo di aver capito. Il MACD è un delta di due medie, quindi il tasso sarà medio, non vero. Dopo tutto Si può quindi prendere questo compito come un tentativo di introdurre il sistema SI nell'analisi, per sistematizzarlo e renderlo più comprensibile.
Motivazione: