Ho bisogno di aiuto! Non riesco a risolvere il problema, sto incontrando delle limitazioni hardware - pagina 13

 
Candid:
Apparentemente uno dei risultati di un passaggio con una data è una nuova data.

Se la nuova data = la prossima sequenza, bene. Se va in sequenza. Cazzo, la tattologia. Intendo consecutivi.

Potete leggere il pacchetto in anticipo, saranno poco profondi.

E nemmeno il prossimo, chi se ne frega. Indicare e chiamare secondo necessità.

 
Urain:

a Komposter: Andrei, se sei bloccato sul problema della dimensione, significa che hai fatto un errore nella formulazione del problema.

Qui ci sono tre opzioni:

1 pensaci da solo

2 aprire il problema in un forum pubblico

3 risolvere il problema in privato (per tutti quelli che pensi possano risolverlo e di cui ti fidi per mantenere il segreto).

Ti spiego cosa intendo: se salvi le notizie, puoi scrivere perizomi di tutta la notizia, oppure puoi fare una codifica di frasi tipiche (compressione), "saldo del conto" diventa 1, "capitale del conto" diventa 2, ecc. Un'altra variante del problema tipico è il desiderio di riempire i dati già ordinati, per le grandi dimensioni questa è la morte, è più facile aggiungere alla fine e fare l'ordinamento condizionato dagli indici.

Penso che sia chiaro quello che voglio dire dicendo che c'è un errore nella dichiarazione del problema.

Rifletterei su questo compito
 
Poiché il problema è piuttosto accademico (come una domanda di lavoro per un programmatore) e molte persone hanno mostrato interesse in esso, perché non formularlo più strettamente in termini di formato di descrizione dei dati di input, e ognuno potrebbe generare 20 Gig di dati di prova e presentare la propria soluzione pratica?
 
Immagino che stiamo parlando di un tester/ottimizzatore fatto in casa?
 
joo:
Immagino che stiamo parlando di un tester/ottimizzatore fatto in casa?

No, è qualcos'altro.

Immagino che qualche broker/fornitore abbia ottenuto il database dell'accordo. :)

 

Ripeterò il compito in termini semplificati

- Prendiamo un gruppo di ordini entro M minuti (X+Y trade)
- prendere X primi scambi.
- calcolare qualche criterio Kx (per esempio, profitto=100 o qualcosa del genere).
- controllare i restanti accordi Y del gruppo. Se il loro criterio calcolato Ky ha una deviazione non più di D da Kx, il gruppo d'ordine ci sta bene.

Non sappiamo cosa fare con questo gruppo di ordini e probabilmente non lo scopriremo mai, sono solo informazioni privilegiate :)

Forse si tratta di un commerciante che vuole perdere clienti, o forse è il contrario... uno studio psicologico.

 
sergeev:

Ripeterò il problema in termini semplificati

- Prendi un gruppo di ordini per M minuti (X+Y offerte)
- prendi X prime offerte.
- calcolare qualche criterio Kx (per esempio, profitto=100 o qualcosa del genere).
- controllare i restanti accordi Y del gruppo. Se il loro criterio calcolato Ky ha una deviazione non superiore a D da Kx, allora il gruppo di ordini ci sta bene.

E non sappiamo cosa fare con questo gruppo di ordini, e probabilmente non lo scopriremo mai, a causa delle informazioni privilegiate :)

Forse si tratta di una società di intermediazione che vuole prosciugare i clienti, o viceversa...

Tipico di un DB. Ma bisogna aggregare i dati... Potete scrivere in una tabella separata gli attributi unici di una sequenza (date di c-point), il valore di profitto medio K e la varianza D e poi cercare le prime 10 sequenze che sono vicine ai criteri di cui avete bisogno. Con gli indici su questi campi, la ricerca non richiederà molto tempo (anche in un milione di record). Poi, quando si ottengono le 10 sequenze richieste, si può cercare tra i dati di origine, ma non sarà più un milione di ricerche, perché abbiamo un limite di date.

È ancora un mistero - cosa si deve cercare? Se stiamo parlando di prendere una decisione in termini di apertura/chiusura di un ordine, qualsiasi elaborazione di un tale volume richiederà un tempo piuttosto lungo.

L'unico modo in cui posso vedere l'efficacia di tale elaborazione è aggregare i dati e utilizzare un approccio probabilistico.

Possiamo calcolare i coefficienti di correlazione tra ciò che abbiamo e l'intera storia dei trade e "salvarli" nel robot, senza usare DB in futuro.

C'è un altro punto. Se stiamo parlando di scambi, forse c'è una ragione per separare gli scambi per ogni simbolo? E scrivere robot dello stesso tipo progettati per EURUSD, USDJPY, ecc.

 
A proposito, è un'idea interessante... Gli affari redditizi possono essere generati quanto vuoi, analizzando giornalmente (High/Low) su minuti, e ricordando il tempo dei prezzi di apertura e chiusura (in un file). Poi scrivi un Expert Advisor che legge il file, e quando la data e l'ora corrispondono, apre/chiude i trade, ed eseguilo nel tester. L'ho fatto per un cliente che voleva promuovere le vendite del suo robot. E analizzare già fatto mestieri nello stesso modo )).
 
sergeev:

Penso che questo sia l'unico modo per identificare la strategia che è stata usata per fare trading (o un insieme di parametri per un robot) in una data sequenza.

Mi sembra che in questo modo possiamo solo identificare la strategia che è stata usata per fare trading (o un insieme di parametri del robot) di una data sequenza, e passare ad essa in una certa situazione di mercato.

 
marketeer:
Dato che il problema è piuttosto accademico (sembra una domanda per assumere un programmatore) e molte persone hanno mostrato interesse in esso, perché non formularlo più strettamente in termini di formato di descrizione dei dati di input, e tutti potrebbero generare 20 Giga di dati di prova e presentare la loro soluzione pratica?
Sono d'accordo. Il compito non è banale, l'interesse sta crescendo.