Richiesta non valida - ho appena iniziato e non riesco a capire... - pagina 7

 
papaklass:

Il mio post è una risposta alla domanda perché non uso la libreria standard

In realtà, anche io. Ma io per la ragione - che ho creato le mie classi molto prima di MK.

e un tentativo di attirare l'attenzione degli sviluppatori sulla ridondanza dei metadati in una classe.

Non penso che sia ridondante. questo è come OOP è essenzialmente. hai solo una visione diversa dei wrapper, un design di classe diverso e una logica di struttura commerciale. è probabilmente una questione di gusto.

------------------------

Ma con gli errori commerciali - facciamo degli esempi. Avete un modo universale di gestire per esempio 10008 -> 10012 ?
Diciamo, indipendentemente dalle azioni precedenti e successive dell'Expert Advisor.
Quale dovrebbe essere il risultato del trattamento di questo ordine che non si è aperto ...

 

Le funzioni inutilizzate sono in un certo senso escluse dal file finale.

Un'altra cosa è che quasi sempre, il codice "non universale" è più veloce del codice universale (gli EA, per esempio, sono ottimizzati più velocemente, e i claudes sono pagati un po' meno).

 
Non dimenticare l'ottimizzazione del compilatore + l'inlining di massa.

Vengono prese solo e soltanto le funzioni che vengono chiamate nel codice, e tutto il resto viene saltato durante l'ottimizzazione. Cioè, se solo 3 della classe con 61 metodi sono utilizzati, è il codice di tre metodi che sarà incluso.

Le funzioni in linea, tenendo conto delle piccole dimensioni delle funzioni stesse e dell'ottimizzazione del codice in generale, rendono il codice semplice e piatto.
 
papaklass:

Pertanto, il caso (10008 -> 10012) non mi interessa, perché se la posizione non viene aperta su un certo tick, verrà aperta sul tick successivo.

Cerco di costruire il mio codice in modo tale che, se la logica dell'Expert Advisor richiede l'apertura di una posizione, la posizione viene aperta la maggior parte delle volte. Che sia aperto al prossimo tick o 10 tick dopo,

questo è esattamente l'approccio giusto.

E poi tornando alla questione della gestione degli errori - cosa manca nella libreria standard? Quali miglioramenti nella direzione della gestione/analisi degli errori vogliono metterci?

 
papaklass:

aprendo una posizione con un lotto superiore ai fondi disponibili, o quando si piazza un ordine pendente, non si mantiene il passo minimo consentito dal prezzo corrente, o si piazza uno stop senza tenere conto della direzione della posizione.

E cosa si intende per elaborazione di queste situazioni, correzione dei difetti nell'ordine del programmatore da parte della biblioteca stessa?
cioè la biblioteca stessa inverte le fermate, o cambia il lotto a sua discrezione?

o semplicemente inviare il codice appropriato in risposta e far sapere al proger il suo ordine sbagliato?

 
sergeev:

e cosa si intende per gestire queste situazioni, la libreria stessa che corregge le carenze dell'ordine del programmatore?
cioè, in modo che la biblioteca stessa inverta le fermate, o cambi il lotto a sua discrezione?

Un altro paio di domande innocenti e papaklass comincerà a indovinare e a sospettare qualcosa...
 

È solo che i programmatori hanno diverse percezioni di "necessità e sufficienza", ed è per questo che si pongono domande sull'estensione delle funzionalità.

è meglio per loro essere completamente chiari che rimanere indovinati.

 
papaklass:
Ancora una volta, non sto convincendo nessuno di niente. Se pensate che la biblio vada bene, lasciatela così com'è. Anche dopo la discussione, non userò questa biblioteca. Solo io, posso?

Alexander, non sei l'unico. Ma non è questo il punto della domanda. Essere o non essere.

La questione è puramente pratica - con benefici per lo sviluppo (forse anche il vostro).

Cosa si intende per elaborazione di queste situazioni, correzione dei difetti nell'ordine del programmatore da parte della libreria stessa?
Cioè, che la biblioteca stessa inverta le fermate o cambi il lotto a sua discrezione?

O semplicemente inviare il codice appropriato in risposta e far sapere al proger il suo ordine sbagliato?
 
papaklass:
... Perché non dire al programmatore che il suo ordine non è valido ed emettere un codice di errore prima dell'invio?
Sembra che la richiesta sbagliata sia interrotta nella fase client e non raggiunga il server.
 
papaklass:
La risposta è in superficie - perché inviare un ordine al server che non è corretto e aspettare una risposta? Perché non dire subito al programmatore che il suo ordine è sbagliato ed emettere un codice di errore prima di inviarlo?
Stiamo parlando di aggiungere OrderCheck a CTrade::OrderSend?