Μια εγγραφή δεδομένων αγοράς μπορεί να είναι απολύτως ακριβής και παρ’ όλα αυτά να μην αποτελεί αξιόπιστο τεκμήριο για ένα backtest. Η συναλλαγή έγινε, η τιμή είναι σωστή και η χρονική σήμανση έγκυρη· όμως η ροή δεδομένων μπορεί να την παρέδωσε καθυστερημένα, ένας πάροχος να τη διόρθωσε αργότερα ή η αγορά που αναφέρεται να μην ήταν προσβάσιμη στη στρατηγική σας.
Για να διαπιστώσετε αν τα ιστορικά δεδομένα ήταν αξιοποιήσιμα για συναλλαγές, ελέγξτε περισσότερα από τη χρονική σήμανση του συμβάντος. Χρειάζεται να ξέρετε τι περιγράφει η εγγραφή, πότε έγινε διαθέσιμη στο σύστημα, ποιο venue ή χρηματοπιστωτικό μέσο αντιπροσωπεύει και αν η προσφορά ή η συναλλαγή θα μπορούσε εύλογα να στηρίξει την εντολή σας.
Αρκεί μια σωστή ιστορική τιμή για ένα backtest;
Όχι. Η ακρίβεια απαντά στο ερώτημα «Ποια τιμή κατέγραψε τελικά η πηγή;». Ένα backtest πρέπει επίσης να απαντά στα ερωτήματα «Τι θα μπορούσε να γνωρίζει η στρατηγική μου τη στιγμή της απόφασης;» και «Τι θα μπορούσε να εκτελέσει;». Πρόκειται για διαφορετικά ερωτήματα.
Ας υποθέσουμε ότι μια συναλλαγή κρυπτονομίσματος καταγράφεται στις 12:00:00.120, αλλά η ροή του παρόχου δεδομένων σας την παραδίδει στη διεργασία σας στις 12:00:00.480. Μια στρατηγική που αποφασίζει στο .200 δεν μπορεί να χρησιμοποιήσει αυτή τη συναλλαγή, παρότι η χρονική σήμανση του συμβάντος προηγείται της απόφασής της. Αν το ιστορικό αρχείο διατηρεί μόνο την ώρα του συμβάντος, το backtest μπορεί αθόρυβα να δώσει στη στρατηγική πληροφορίες που η ζωντανή διεργασία της δεν θα είχε λάβει ακόμη.
| Ώρα ή πεδίο | Τι σας δείχνει | Αστοχία backtest αν λείπει |
|---|---|---|
| Ώρα συμβάντος | Πότε λέει το χρηματιστήριο ότι συνέβη το συμβάν | Σύγχυση της ώρας της αγοράς με τη διαθεσιμότητα στη στρατηγική |
| Ώρα λήψης | Πότε έλαβε το μήνυμα το σύστημα συλλογής σας | Χρήση καθυστερημένων δεδομένων σαν να είχαν φτάσει αμέσως |
| Ακολουθία ή ID ενημέρωσης | Πού ανήκει το συμβάν στη σειρά της ροής δεδομένων | Εφαρμογή ενημερώσεων εκτός σειράς ή σιωπηρή παράλειψή τους |
| Ώρα αναθεώρησης | Πότε έγινε γνωστή μια διορθωμένη ιστορική τιμή | Backtest με τιμή που δεν υπήρχε στην αρχική ροή δεδομένων |
Όταν το αρχείο σας δεν έχει ώρες λήψης, να είστε σαφείς για αυτό το κενό. Μπορείτε να δοκιμάσετε μια υπόθεση καθυστέρησης ή να περιορίσετε τον ισχυρισμό σας σε έρευνα βάσει της ώρας συμβάντος. Δεν μπορείτε να ανασυνθέσετε με ακρίβεια το σύνολο πληροφοριών από χρονικές σημάνσεις που δεν αποθηκεύτηκαν ποτέ.
Πώς καταλαβαίνω αν μια προσφορά μπορούσε να εκτελεστεί;
Ξεκινήστε από την αγορά στην οποία θα έφτανε η εντολή σας. Η ενοποιημένη καλύτερη τιμή αγοράς και πώλησης μπορεί να συνοψίζει πολλά venue· δεν αποδεικνύει ότι ο λογαριασμός σας είχε πρόσβαση στον εμφανιζόμενο όγκο, ότι η προσφορά εξακολουθούσε να ισχύει όταν έφτασε η εντολή σας ή ότι το venue θα δεχόταν τον τύπο εντολής σας.
Για μια market εντολή, η εκτέλεση στη μέση τιμή είναι συνήθως φανταστική. Μια χρησιμότερη εκτίμηση διατρέχει το ορατό βιβλίο εντολών με βάση το μέγεθος της εντολής και κατόπιν προσθέτει προμήθειες και μια υπόθεση για καθυστέρηση ή επίδραση στην αγορά. Αν έχετε μόνο δεδομένα κορυφαίου επιπέδου, περιορίστε τον ισχυρισμό σας: μπορείτε να εκτιμήσετε το πρώτο επίπεδο, αλλά δεν μπορείτε να συναγάγετε βάθος που δεν καταγράφηκε ποτέ.
Για μια limit εντολή, το άγγιγμα της τιμής δεν σημαίνει ότι έγινε εκτέλεση. Οι εντολές που προηγούνται της δικής σας μπορεί να απορροφήσουν πρώτες τη διαθέσιμη ποσότητα. Η θέση στην ουρά συνήθως δεν μπορεί να εξακριβωθεί από συνηθισμένα στιγμιότυπα, επομένως ένας κανόνας εκτέλεσης βάσει αγγίγματος της τιμής πρέπει να αντιμετωπίζεται ως αισιόδοξο σενάριο και όχι ως γεγονός.
Μια μπάρα 1 λεπτού μπορεί να δείξει ότι το χαμηλό πέρασε την τιμή της limit εντολής σας. Δεν μπορεί να δείξει αν η εντολή σας είχε φτάσει στο venue πριν από το χαμηλό, πόση ποσότητα συναλλάχθηκε εκεί ή πόσες εντολές βρίσκονταν μπροστά σας στην ουρά.
Τι πρέπει να ελέγξω πριν εμπιστευτώ ένα αρχείο δεδομένων αγοράς;
Πρώτα ελέγχω τα βασικά. Έτσι εντοπίζονται περισσότερα προβλήματα στην έρευνα απ’ όσα θα εντόπιζε ένα περίπλοκο μοντέλο εκτέλεσης προσαρτημένο σε μια προβληματική ροή δεδομένων.
- Κάλυψη: Υπάρχουν διαστήματα που λείπουν, διπλά συμβάντα, κενά στην ακολουθία ή ανεξήγητες περίοδοι με μηδενικό όγκο;
- Ταυτότητα αγοράς: Αντιστοιχεί το σύμβολο στο ίδιο χρηματιστήριο, συμβόλαιο, νόμισμα αποτίμησης και στις ίδιες προδιαγραφές του μέσου διαχρονικά;
- Διαθεσιμότητα: Διατηρούνται τόσο οι ώρες συμβάντος όσο και οι ώρες λήψης; Αν όχι, ποια υπόθεση καθυστέρησης οριοθετεί το αποτέλεσμα;
- Διορθώσεις: Μπορείτε να ξεχωρίσετε το αρχικό μήνυμα από μεταγενέστερες συμπληρώσεις ή αναθεωρήσεις του παρόχου;
- Μονάδες: Ερμηνεύονται με συνέπεια οι τιμές, οι ποσότητες, οι πολλαπλασιαστές συμβολαίων και οι χρονικές σημάνσεις;
Αυτός ο τελευταίος έλεγχος ακούγεται σχεδόν υπερβολικά βασικός. Κάποτε πέρασα ένα πρωινό διερευνώντας μια φαινομενική αλλαγή καθεστώτος μεταβλητότητας, που τελικά οφειλόταν σε αλλαγή μονάδων σε ένα πεδίο ποσότητας μετά από μετάβαση ροής δεδομένων. Το διάγραμμα ήταν εντυπωσιακό· η μονάδα ήταν λάθος.
Πώς μπορώ να ελέγξω αν η διαθεσιμότητα των δεδομένων αλλάζει το αποτέλεσμα;
Κάντε μια μικρή ανάλυση ευαισθησίας γύρω από το όριο λήψης αποφάσεων της στρατηγικής. Μετατοπίστε τη στιγμή που τα δεδομένα γίνονται αξιοποιήσιμα κατά ρεαλιστικές καθυστερήσεις, απορρίψτε ενημερώσεις με ασυνέχειες στην ακολουθία και συγκρίνετε τις εκτελέσεις χρησιμοποιώντας το βιβλίο εντολών του πραγματικού venue όπου είναι διαθέσιμο. Αναφέρετε τόσο το αρχικό όσο και το υποβαθμισμένο αποτέλεσμα. Αν μια μικρή καθυστέρηση εξαφανίζει το αποτέλεσμα, η στρατηγική μπορεί να εξαρτάται από ένα πλεονέκτημα πληροφόρησης που η υποδομή συλλογής σας δεν μπορεί να παρέχει αξιόπιστα.
Για ένα συγκεκριμένο παράδειγμα, ας υποθέσουμε ότι ένα σήμα ενεργοποιείται όταν η καλύτερη τιμή αγοράς ανεβαίνει κατά ένα tick. Κάντε την αναπαραγωγή μία φορά με την ώρα συμβάντος του χρηματιστηρίου και μία με την ώρα λήψης από το σύστημα συλλογής. Αν η εκδοχή με την ώρα συμβάντος κάνει 40 συναλλαγές και η εκδοχή με την ώρα λήψης 27, αυτή η διαφορά αποτελεί μέρος των τεκμηρίων για τη στρατηγική. Το ίδιο ισχύει και για την απόδοση σε κάθε αναπαραγωγή. Μην αποκρύπτετε την ασθενέστερη αναπαραγωγή επειδή τα δεδομένα της φαίνονται λιγότερο καλαίσθητα.
Το paper trading είναι ένα χρήσιμο επόμενο βήμα ελέγχου, επειδή αποκαλύπτει καθυστερήσεις στη ροή δεδομένων, παρωχημένες προσφορές, λάθη αντιστοίχισης συμβόλων και περιορισμούς του venue μέσα στην ίδια λειτουργική διαδρομή που χρησιμοποιεί το ερευνητικό σας σύστημα. Και πάλι, δεν θα αναπαράγει κάθε ζωντανή θέση στην ουρά ή κάθε επίδραση στην αγορά. Κρατήστε σαφές αυτό το όριο.
Τι σημαίνει στην πράξη «δεδομένα αξιοποιήσιμα για συναλλαγές»;
Σημαίνει ότι το backtest μπορεί να εξηγήσει πότε συνέβη μια παρατήρηση, πότε μπορούσε να τη χρησιμοποιήσει η στρατηγική, από ποια αγορά προήλθε και ποια τεκμήρια εκτέλεσης στηρίζουν την υποτιθέμενη εκτέλεση. Μια καθαρή σειρά τιμών είναι το σημείο εκκίνησης. Η έρευνα γίνεται αξιόπιστη όταν οι παραδοχές για τον χρονισμό, την πρόσβαση και τις εκτελέσεις αντέχουν στον έλεγχο — και όταν το αποτέλεσμα εξακολουθεί να βγάζει νόημα αφού τις κάνετε λιγότερο ευνοϊκές.
← Όλα τα άρθρα


