Η χρηματιστηριακή πλατφόρμα Metatrader 4 (ΜΤ4) έχει αναπτυχθεί από την εταιρεία Metaquotes και αποτελεί την πλέον δημοφιλή πλατφόρμα λιανικής αγοράς (αφορά κυρίως ιδιώτες επενδυτές) στην αγορά συναλλάγματος. Εκτός όμως από το συνάλλαγμα υποστηρίζει και μία σειρά από CFDs (Contract for the Difference – Συμβόλαια επί της διαφοράς), πάνω σε διεθνείς δείκτες και εμπορεύματα. Το επαναστατικό χαρακτηριστικό που οδήγησε το Metatrader να κατακτήσει την αγορά του συναλλάγματος, πέρα από την δωρεάν παροχή live τιμών και διαγραμμάτων, είναι ότι συνοδεύεται από το πρόγραμμα Metaeditor. Το περιβάλλον του Metaeditor δίνει την δυνατότητα στον χρήστη να δημιουργήσει scripts, δείκτες και ολοκληρωμένα μηχανικά επενδυτικά συστήματα (Expert Advisors) με την χρήση της γλώσσας προγραμματισμού MQL4 (Metaquotes Language 4). Η γλώσσα MQL4 είναι παρόμοια με την δημοφιλή γλώσσα προγραμματισμού C, προσαρμοσμένη όμως κατάλληλα για την δημιουργία επενδυτικών συστημάτων για χρηματιστηριακές εφαρμογές. Στην παρουσίαση αυτή θα ασχοληθούμε με την χρήση των Expert Advisors.
Φόρτωση και ενεργοποίηση ενός Expert Advisor
Για να εγκαταστήσουμε έναν Expert στο MT4 πρέπει καταρχήν να κατεβάσουμε το αρχείο του στον υπολογιστή μας. Το εκτελέσιμο αρχείο ενός Expert έχει κατάληξη *.ex4 (π.χ. MyExpert.ex4) ή εάν βρίσκεται σε μορφή αρχείου γλώσσας προγραμματισμού *.mql4 (π.χ. MyExpert.mql4). Το αρχείο αυτό πρέπει να αντιγραφεί μέσα στον φάκελο experts, ο οποίος βρίσκεται μέσα στον φάκελο που είναι εγκατεστημένο το MT4. Εάν δεν γνωρίζουμε την διαδρομή που έχει εγκατασταθεί το MT4, μπορούμε πολύ εύκολα να την βρούμε ως εξής: Δεξί κλικ στο εικονίδιο του MT4 στην επιφάνεια εργασίας – Properties (Ιδιότητες) και στην καρτέλα Shortcut (Συντόμευση) βλέπουμε το πεδίο Start In (Έναρξη Από), όπως φαίνεται στην Εικόνα 1.
Εικόνα 1 (Εύρεση διαδρομής εγκατάστασης MT4)Αφού επικολλήσουμε τον Expert στον φάκελο experts ανοίγουμε το MT4 και πηγαίνουμε στον Navigator (Πλοηγό). Κάνουμε κλικ στον σταυρό αριστερά από την επιλογή Expert Advisors και ανοίγει μία λίστα με τους Experts που υπάρχουν εγκατεστημένοι. Εάν όλα λειτουργούν σωστά και δεν υπάρχει κάποιο πρόβλημα, το εικονίδιο αριστερά του Expert πρέπει να εμφανίζεται με ζωντανό γαλάζιο και κίτρινο χρώμα (βλ. Εικόνα 2 – μπλε πλαίσιο). Εάν εμφανιστεί οποιοδήποτε πρόβλημα και ο Expert δεν μπορεί να εκτελεστεί, το εικονίδιο του γίνεται αυτομάτως γκρι (βλ. Εικόνα 2 – κόκκινο πλαίσιο).
Εικόνα 2 (Πλοηγός του MT4)Για να φορτώσουμε τον Expert σε ένα διάγραμμα, επιλέγουμε με αριστερό κλικ το εικονίδιο του και κρατώντας το πατημένο το σέρνουμε μέσα στο διάγραμμα. Μόλις αφήνουμε το αριστερό κλικ ελεύθερο ο Expert φορτώνεται και εμφανίζεται ένα παράθυρο με δύο καρτέλες (βλ. Εικόνα 3).Στην καρτέλα Common (Γενικά) υπάρχουν κάποιες γενικές επιλογές. Για να τρέχει ο Expert κανονικά και να εκτελεί συναλλαγές χωρίς να ζητάει κάθε φορά επιβεβαίωση, πρέπει οι επιλογές εντός των πρασίνων πλαισίων να ρυθμιστούν όπως φαίνονται στην Εικόνα 3.
Εικόνα 3 (Παράθυρο επιλογών Expert Advisor)Πιο αναλυτικά στην καρτέλα Common υπάρχουν οι εξής επιλογές:
- Positions: Επιλογή εκτέλεσης Long, Short ή Long & Short θέσεων από τον Expert
- Enable Alerts: Ενεργοποίηση Ειδοποιήσεων
- Disable alert once hit: Απενεργοποίηση ειδοποιήσεων μετά την 1η ειδοποίηση
- Allow live trading: Ενεργοποίηση εκτέλεσης συναλλαγών. Εάν αυτή η επιλογή δεν ενεργοποιηθεί ο Expert δεν ανοίγει θέσεις.
- Ask Manual confirmation: Κάθε φορά που ο Expert θέλει να εκτελέσει συναλλαγή να ερωτείται ο χρήστης. Εάν δεν δοθεί χειροκίνητη αποδοχή από τον χρήστη η συναλλαγή δεν εκτελείται.
- Allow DLL Imports: Να επιτρέπεται η είσοδος DLL αρχείων κατά την εκτέλεση του Expert. Συνήθως οι Experts καλούν διάφορες συναρτήσεις από αρχεία τύπου DLL. Εάν λοιπόν χρησιμοποιείται κάποιος Expert που καλεί αρχεία DLL και η επιλογή αυτή είναι απενεργοποιημένη τότε δεν μπορεί να “τρέξει”.
- Confirm DLL function calls: Χειροκίνητη αποδοχή κλήσης αρχείου DLL.
- Allow import of external experts: Να επιτρέπεται η εισαγωγή εξωτερικών Experts
Στην καρτέλα Inputs (Είσοδοι) περιέχονται όλα τα ορίσματα εισόδου για την παραμετρο¬ποίηση του Expert. Από τα μπουτόν Load και Save μπορεί ο χρήστης να φορτώσει ή να σώσει αντίστοιχα συνδυασμούς των παραμέτρων εισόδου.Αφού γίνουν οι απαραίτητες επιλογές και πατηθεί ΟΚ, ο Expert φορτώνεται στο διάγραμμα και εμφανίζεται επάνω δεξιά στο διάγραμμα το όνομα του. Για να αρχίσει να “τρέχει” και να εκτελεί συναλλαγές θα πρέπει να ενεργοποιηθεί επίσης το μπουτόν Expert Advisors. Στην Εικόνα 4 φαίνονται οι δυο διαφορετικές καταστάσεις του μπουτόν “Expert Advisors” και πως το εικονίδιο δεξιά επάνω στο διάγραμμα αλλάζει κατάσταση ανάλογα με την θέση του.
Εικόνα 4 (Μπουτόν καθολικής ενεργοποίησης Experts)Εάν ο χρήστης θέλει να αλλάξει τις ρυθμίσεις του Expert, αφού έχει φορτωθεί στο διάγραμμα, πρέπει να κάνει δεξί κλικ εντός του διαγράμματος και στο μενού που εμφανίζεται (βλ. Εικόνα 5) να επιλέξει Expert Advisors και στην συνέχεια Properties (Ιδιότητες), για να εμφανιστεί ξανά το παράθυρο της Εικόνας 3. Εάν πάλι θέλει να διαγράψει τον Expert απλά επιλέγει Remove (Διαγραφή).
Εικόνα 5 (Επαναρύθμιση και Διαγραφή Expert)
Εκτέλεση Backtest με την χρήση του Strategy Tester
Πριν χρησιμοποιηθεί ένας Expert είναι απαραίτητο να ελεγχθεί η απόδοση και τα χαρακτηριστικά του στο παρελθόν, να εκτελεστεί δηλαδή ένα Backtest. Μπορεί ο δημιουργός του Expert να υπόσχεται κέρδη, αλλά αυτό δεν σημαίνει απαραίτητα ότι ισχύει. Η δυνατότητα εκτέλεσης Backtest αποτελεί ένα από τα σημαντικότερα πλεονεκτήματα των μηχανικών συστημάτων, έναντι των χειροκίνητων. Εάν ένα σύστημα παρουσιάζει αρνητική απόδοση στο παρελθόν απορρίπτεται προφυλάσσοντας από σχεδόν βέβαιες απώλειες. Επίσης δοκιμάζοντας διάφορα μηχανικά συστήματα και συγκρίνοντάς τα αποτελέσματά τους, ο επενδυτής μπορεί να επιλέξει αυτά με τα καλύτερα χαρακτηριστικά και να επιτύχει έτσι την καλύτερη δυνατή απόδοση.Η εκτέλεση backtest στην πλατφόρμα ΜΤ4 πραγματοποιείται μέσω του εργαλείου Strategy Tester. Ο Strategy Tester ανοίγει από το κεντρικό μενού View (Εμφάνιση) και στην συνέχεια Strategy Tester.
Εικόνα 6 (Strategy Tester)Αρχικά υπάρχουν μόνο δύο καρτέλες (Settings και Journal), αλλά εάν εκτελεστεί backtest ή βελτιστοποίηση τότε εμφανίζονται και νέες (βλ. Εικόνα 6). Συνολικά οι καρτέλες είναι οι εξής:
- Settings (Ιδιότητες): Καθορισμός όλων των ρυθμίσεων για την εκτέλεση backtest ή βελτιστοποίησης.
- Results (Αποτελέσματα): Καταγραφή όλων των εκτελεσθέντων πράξεων και των αποτελεσμάτων τους.
- Graph (Γράφημα Απόδοσης): Σχεδιασμός καμπύλης απόδοσης του μηχανικού συστήματος.
- Report (Αναφορά): Παρουσίαση στατιστικών στοιχείων backtest.
- Journal (Καταγραφή Γεγονότων): Καταγραφή γεγονότων κατά την εκτέλεση της διαδικασίας.
- Optimization Results (Αποτελέσματα Βελτιστοποίησης): Παρουσίαση των αποτελεσμάτων βελτιστο-ποίησης του συστήματος για όλους τους δυνατούς συνδυασμούς παραμέτρων που επιλέχθηκαν.
- Optimization Graph (Γράφημα Βελτιστοποίησης): Σχεδιασμός γραφήματος βελτιστοποίησης του συστήματος για όλους τους δυνατούς συνδυασμούς παραμέτρων που επιλέχθηκαν.
Οι δύο τελευταίες καρτέλες εμφανίζουν αποτελέσματα μόνο εάν επιλεχθεί βελτιστοποίηση (Optimization), διαφορετικά παραμένουν κενές.
Καρτέλα Settings
Στην καρτέλα Settings ο χρήστης καθορίζει όλες τις ρυθμίσεις του Expert πριν εκτελέσει backtest ή βελτιστοποίηση. Ακολουθεί περιγραφή όλων των επιλογών:
- Expert Advisor: Επιλογή Expert. Εμφανίζονται όλοι οι Experts που βρίσκονται αποθηκευμένοι στον φάκελο …\MetaTrader 4\experts.
- Symbol: Επιλογή Ισοτιμίας
- Model: Επιλογή μοντέλου χρήσης ιστορικών δεδομένων. Η επιλογή αυτή καθορίζει τι είδους ιστορικά δεδομένα θα χρησιμοποιηθούν για την εκτέλεση του backtest. Επειδή η παράμετρος των δεδομένων κρίνεται ως εξαιρετικά σημαντική στην συνέχεια αφιερώνεται ξεχωριστή ενότητα όπου εξηγούνται λεπτομερώς όλες οι λεπτομέρειες που αφορούν το θέμα.
- Use Date (From – To): Επιλογή χρονικής περιόδου (από … έως)
- Visual mode: Εάν ενεργοποιηθεί αυτή η επιλογή, μόλις πατηθεί το Start ανοίγει αυτομάτως το διάγραμμα της ισοτιμίας και όσο εκτελείται το backtest ο χρήστης παρακολουθεί τις παρελθοντικές κινήσεις του συστήματος σαν να εκτελούνται σε ζωντανό χρόνο. Η λειτουργία αυτή χρησιμεύει πολύ στην ανίχνευση αδυναμιών ενός Expert. Δεξιά από το check box της επιλογής, υπάρχει μία μπάρα μέσω της οποίας ο χρήστης μπορεί να αυξομειώσει την ταχύτητα με την οποία εκτελούνται οι κινήσεις στο διάγραμμα.
- Period: Επιλογή timeframe (M1, M5, M15, M30, H1, D)
- Spread: Επιλογή Spread μεταξύ τιμής αγοράς και τιμής πώλησης.
- Optimization: Ενεργοποίηση της διαδικασίας βελτιστοποίηση του μηχανικού συστήματος.
- Expert Properties: Πατώντας αυτό το μπουτόν εμφανίζεται ένα παράθυρο, το οποίο περιλαμβάνει τις εξής καρτέλες:
- Καρτέλα Testing: Επιλογή αρχικού κεφαλαίου (Initial Deposit), νομίσματος βάσης του λογαριασμού και τύπου θέσεων (Long, Short, Long & Short). Το πεδίο Optimization θα μας απασχολήσει παρακάτω στην ενότητα που θα ασχοληθούμε με την βελτιστοποίηση των μηχανικών συστημάτων.
Εικόνα 7 (Καρτέλα Testing)
- Καρτέλα Inputs: Ρύθμιση των ορισμάτων εισόδου του Expert. Στην στήλη Value επιλέγονται οι τιμές των παραμέτρων για τις οποίες θα εκτελεστεί backtest. Εάν έχει επιλεχθεί βελτιστοποίηση, για κάθε παράμετρο που θα ενεργοποιηθεί το check box της πρώτης στήλης, όπως θα δούμε παρακάτω, θα ελεγχθούν όλες οι δυνατές περιπτώσεις που καθορίζονται από τον χρήστη.
Εικόνα 8 (Καρτέλα Inputs)
- Καρτέλα Optimization: Επιλογή κριτηρίων βελτιστοποίησης. Η περιγραφή της καρτέλας αυτής γίνεται στην ενότητα που αναφέρεται αποκλειστικά στην βελτιστοποίηση.
Εικόνα 9 (Symbol Properties)
- Open Chart: Εμφάνιση του διαγράμματος στο οποίο έλαβε χώρα το backtest. Στο άνω μέρος αναγράφονται οι παράμετροι εισόδου. Επίσης στο διάγραμμα φορτώνονται όλοι οι δείκτες που χρησιμοποιεί ο Expert και οι συναλλαγές που έχουν εκτελεστεί. Τα επίπεδα αγοράς και πώλησης αποτυπώνονται με πράσινα και κόκκινα βελάκια αντίστοιχα, ενώ οι συσχετισμένες πράξεις ενώνονται με διακεκομμένες γραμμές. Εάν η θέση είναι Long η γραμμή έχει μπλε χρώμα, ενώ αν είναι Short κόκκινο. Ένα ενδεικτικό διάγραμμα παρουσιάζεται στην Εικόνα 9.
Εικόνα 10 (Διάγραμμα απεικόνισης συναλλαγών που εκτέλεσε ο Expert κατά την διάρκεια του backtest)
- Modify Expert: Ανοίγει το περιβάλλον Metaeditor, μέσω του οποίου μπορούν να γίνουν παρεμβάσεις στον κώδικα λειτουργίας του Expert. Αυτή η λειτουργία παρουσιάζει χρησιμότητα σε χρήστες που γνωρίζουν προγραμματισμό σε γλώσσα MQL4 και μπορούν να εκτελέσουν τέτοιου είδους παρεμβάσεις. Να σημειωθεί ότι για να ανοίξει το αρχείο απαιτείται να διαθέτουμε το αρχείο του Expert σε μορφή γλώσσας προγραμματισμού (*.mql4) και όχι απλά το εκτελέσιμο αρχείο (*.ex4).
- Start: Εκκίνηση του backtest.
Καρτέλα Results
Απεικόνιση όλων των συναλλαγών που εκτελέστηκαν κατά την διάρκεια του backtest. Από τα πεδία “Set Date From” και “Set Date To” μπορούμε να φιλτράρουμε την χρονική περίοδο απεικόνισης των εκτελεσθέντων συναλλαγών.Επίσης με την επιλογή “Copy” μπορούμε να αντιγράψουμε μία γραμμή, ενώ με το “Copy All“ όλες τις γραμμές των πράξεων και να τις επικολλήσουμε αλλού, όπως για παράδειγμα σε κάποιο λογιστικό λογισμικό σαν το Excel. Αυτό δίνει την δυνατότητα περαιτέρω στατιστικής ανάλυσης πάνω στα αποτελέσματα του backtest, πράγμα το οποίο δεν είναι εφικτό μέσω του MT4 καθώς δεν διαθέτει τα απαραίτητα στατιστικά εργαλεία.
Εικόνα 11 (Καρτέλα Results του Strategy Tester)Τέλος η επιλογή “Save as Report” δίνει την δυνατότητα εξαγωγής ολοκληρωμένης αναφοράς του backtest με όλα τα στοιχεία που υπολογίζονται από το MT4 σε μορφή αρχείου *.html (βλ. Εικόνα 10).
Εικόνα 12 (Αναφορά backtest του Strategy Tester)
Καρτέλα Graph
Απεικόνιση της καμπύλης ανάπτυξης κεφαλαίου (Equity Curve) ανά συναλλαγή. Στο κάτω μέρος του διαγράμματος εμφανίζεται το μέγεθος της θέσης σε κάθε συναλλαγή.
Εικόνα 13 (Καρτέλα Graph – Καμπύλη ανάπτυξης κεφαλαίου)
Καρτέλα Report
Απεικόνιση στατιστικών παραμέτρων των συναλλαγών του Expert. Οι στατιστικές παράμετροι χρησιμοποιούνται για την αξιολόγηση των επενδυτικών συστημάτων και αποτελούν αναπόσπαστο κομμάτι των στρατηγικών διαχείρισης ρίσκου.
Εικόνα 14 (Καρτέλα Report)
Καρτέλα Journal
Ενημερωτική καταγραφή των ενεργειών που εκτελεί ο Strategy Tester κατά την διάρκεια του backtest , σε μορφή μηνυμάτων κειμένου.
Εικόνα 15 (Καρτέλα Journal)
Εξασφαλίζοντας αξιόπιστα ιστορικά δεδομένα
Μία πολύ βασική παράμετρος που καθορίζει την αξιοπιστία και την εγκυρότητα ενός backtest είναι η ποιότητα και η μέθοδος χρήσης των ιστορικών δεδομένων. Αρκεί να αναλογιστεί κανείς ότι ακόμη και όλες οι διαδικασίες του backtest να εκτελεστούν στην εντέλεια, εάν τα ιστορικά δεδομένα είναι λανθασμένα ή επιλεχθεί ανεπαρκής μέθοδος διαχείρισης τους, το backtest είναι απολύτως άχρηστο και ακατάλληλο για την εξαγωγή συμπερασμάτων. Κατά συνέπεια πρέπει να δοθεί ιδιαίτερη έμφαση στον παράγοντα αυτό και γι’ αυτό αφιερώνεται ολόκληρη ενότητα στο θέμα.
Μέθοδοι Μοντελοποίησης Ιστορικών Δεδομένων
Είναι σημαντικό να κατανοηθεί πως το λογισμικό ανασυνθέτει και μοντελοποιεί τα ιστορικά δεδομένα για να τα χρησιμοποιήσει στην εκτέλεση του backtest. Όπως αναφέρθηκε πιο πάνω η μέθοδος μοντελοποίησης των ιστορικών δεδομένων επιλέγεται από την παράμετρο Model στην καρτέλα Settings (βλ. Εικόνα 16). Υπάρχουν τρεις διαφορετικές μέθοδοι που μπορούν να χρησιμοποιηθούν.
- Open prices only
- Control points
- Every tick
Εικόνα 16 (Επιλογή μεθόδου ανασύνθεσης ιστορικών δεδομένων)Όταν ο χρήστης πατήσει το μπουτόν Start για να εκκινήσει η διαδικασία του backtest, η πρώτη ενέργεια που εκτελεί το πρόγραμμα είναι να ανασυνθέσει τα δεδομένα. Τα δεδομένα αυτά αποθηκεύονται μέσα στον υποφάκελο …\MetaTrader 4\history\ σε αρχείο με επέκταση *.hst. Τα αρχεία αυτά μετά την εκτέλεση του backtest παραμένουν στον σκληρό δίσκο και μπορούν να ανοιχτούν και να απεικονιστούν από το μενού File και στην συνέχεια Open Offline Charts (βλ. Εικόνα 17). Από το παράθυρο που ανοίγει ο χρήστης επιλέγει το αρχείο και πατάει Open.
Εικόνα 17 (Άνοιγμα Offline Διαγραμμάτων)Τα διαγράμματα που έχουν δημιουργηθεί από τον Strategy Tester για χρήση backtest διακρίνονται στην λίστα από το γαλάζιο εικονίδιο με τον λατινικό χαρακτήρα G. Επίσης για κάθε διάγραμμα αναφέρεται το timeframe για το οποίο δημιουργήθηκε και η μέθοδος που χρησιμοποιήθηκε. Στην Εικόνα 17 διακρίνεται η διαφορά μεγέθους των αρχείων που δημιουργούν οι τρεις διαφορετικές μέθοδοι (βλ. διαφορά πλήθους Bars για τον ίδιο Expert και την ίδια περίπου χρονική περίοδο).Για να γίνει καλύτερα κατανοητό πως λειτουργούν οι μέθοδοι μοντελοποίησης των δεδομένων ακολουθεί ένα παράδειγμα βάσει του ωριαίου διαγράμματος EURUSD της εικόνας 18.
Εικόνα 18 (Παράδειγμα ανασύνθεσης ιστορικών δεδομένων σε ωριαίο γράφημα EURUSD)Στα διαγράμματα που ακολουθούν παρουσιάζεται το πώς ο Strategy Tester μοντελοποιεί τα ιστορικά δεδομένα για το ωριαίο κερί της εικόνας 18 που βρίσκεται ενός του κόκκινου πλαισίου.
Open Price Only
Λαμβάνονται υπόψη μόνο οι τιμές ανοίγματος των Bars του επιλεχθέντος timeframe. Κατά συνέπεια είναι αδύνατον να προσομοιωθούν οι συνθήκες της αγοράς σε πραγματικό χρόνο. Αποτελεί την ταχύτερη μέθοδο, αλλά και την πλέον ανακριβή και γι’ αυτό η χρήση της ενδείκνυται μόνο για Experts που εκτελούν εντολές αποκλειστικά στο άνοιγμα και κλείσιμο των Bars.Στην λειτουργία αυτή για κάθε ένα bar του ιστορικού διαγράμματος δημιουργούνται δύο bars (βλ. Εικόνα 19). Το πρώτο bar δεν παρουσιάζει καμία διακύμανση και παίρνει την τιμή ανοίγματος του κεριού για όλες τις παραμέτρους του, δηλ. Άνοιγμα = Κλείσιμο = Υψηλό = Χαμηλό = Άνοιγμα Ωριαίου Κεριού και Όγκος = 1. Χρησιμοποιείται από τον Expert για την αναγνώριση του σημείου ολοκλήρωση του κάθε bar και την εκτέλεση των συναλλαγών. Το δεύτερο bar περιέχει όλη την πληροφορία του ωριαίου bar, αλλά δεν χρησιμοποιείται καθόλου από τον Expert.
Εικόνα 19 (Μέθοδος μοντελοποίησης ιστορικών δεδομένων Open Price Only)
Control Points
Η επιλογή αυτή βρίσκεται λίγο πιο κοντά στην πραγματικότητα από την προηγούμενη. Για να εκτελεστεί η διαδικασία μοντελοποίησης αντλούνται δεδομένα από το αμέσως ταχύτερο timeframe από αυτό που έχει επιλεγεί για το backtest, δηλ. αν χρησιμοποιείται timeframe H1 ανακαλούνται δεδομένα από timeframe Μ30 κοκ. Γι’ αυτό είναι απαραίτητο τα δεδομένα του αμέσως ταχύτερου timeframe να είναι ακέραια, χωρίς διακοπές ή εσφαλμένες τιμές. Εάν τα δεδομένα αυτά δεν είναι διαθέσιμα, τότε η ανασύνθεση των δεδομένων πραγματοποιείται βάσει κάποιων προκαθορισμένων κυματικών προτύπων, κάτι που μπορεί να μην έχει καμία σχέση με την πραγματική κίνηση των τιμών. Η μέθοδος Control Points δίνει μία καλύτερη εικόνα της ροής των τιμών κατά την διάρκεια ενός bar, αλλά σε καμία περίπτωση δεν προσομοιώνει τις συνθήκες της πραγματικής αγοράς. Πλεονέκτημα της είναι η σχετικά γρήγορη ταχύτητα εκτέλεσης.
Εικόνα 20 (Μέθοδος μοντελοποίησης ιστορικών δεδομένων Control Points)Στην Εικόνα 20 (κόκκινο πλαίσιο) απεικονίζεται η ανασύνθεση των τιμών για το ωριαίο bar της Εικόνας 18. Έχουν δημιουργηθεί 10 bars που χωρίζουν την μία ώρα σε μικρότερα χρονικά διαστήματα και για κάθε ένα από αυτά έχει καταγραφεί η αντίστοιχη διακύμανση του EURUSD.
Every Tick
Αποτελεί την ακριβέστερη μέθοδο μοντελοποίησης δεδομένων του Metatrader4, αλλά παρόλα αυτά δεν μπορεί να αποδώσει 100% τις συνθήκες της πραγματικής αγοράς. Την προσεγγίζει όμως σε πολύ ικανοποιητικό βαθμό και τα αποτελέσματα που δίνει θεωρούνται αξιόπιστα, αποτελώντας έτσι την πλέον ενδεδειγμένη μέθοδο backtest για τους Experts. Μπορεί να συμβούν πιθανές αστοχίες σε εξαιρετικές περιπτώσεις, όπου λαμβάνουν χώρα ακαριαίες κινήσεις σε εξαιρετικά μικρό χρονικό διάστημα. Η λεπτομερής καταγραφή των κινήσεων αυτών είναι αδύνατο να αποτυπωθεί στο διάγραμμα Μ1 και επειδή το Metatrader δεν διαθέτει διαγράμματα μικρότερης χρονικής διάρκειας, η ακριβής καταγραφή τέτοιων κινήσεων χάνεται.Σε αντίθεση με την μέθοδο Control Points η ανασύνθεση των δεδομένων δεν γίνεται μόνο βάσει του αμέσως ταχύτερου timeframe, αλλά από τον συνδυασμό όλων των μικρότερων timeframes. Εάν υπάρχουν διαθέσιμα δεδομένα από πολλά timeframes ταυτόχρονα, επιλέγεται το μικρότερο από αυτά για μεγαλύτερη ακρίβεια. Έτσι λοιπόν δημιουργούνται σημεία ελέγχου με πολύ μεγαλύτερη διακριτικότητα. Στην εικόνα 21 παρουσιάζεται η ανασύνθεση των δεδομένων για το ωριαίο bar της Εικόνας 18 με χρήση της μεθόδου Every Tick. Είναι εμφανές ότι η ακρίβεια σε σχέση με την μέθοδο Control Points είναι εξαιρετικά μεγαλύτερη και φυσικά ο όγκος των δεδομένων επίσης. Γι’ αυτό η μέθοδος αυτή παρουσιάσει πολύ αργή εκτέλεσή κάτι που αποτελεί και το μεγαλύτερο μειονέκτημά της.
Εικόνα 21 (Μέθοδος μοντελοποίησης ιστορικών δεδομένων Every Tick)Η ποιότητα των δεδομένων όλων των μικρότερων timeframes παίζει πολύ σημαντικό ρόλο για την αξιοπιστία των αποτελεσμάτων και μάλιστα υπάρχει και η μέτρηση Modelling Quality στην καρτέλα Reports (βλ. Εικόνα 22) που αξιολογεί την ανασύνθεση των δεδομένων. Για να θεωρείται αξιόπιστη η διαδικασία, η μέτρηση αυτή πρέπει να ξεπερνά το 90%, διαφορετικά κάπου υπάρχει σημαντική αναντιστοιχία δεδομένων μεταξύ των διαφορετικών timeframes.
Εικόνα 22 (Μέτρηση Modelling Quality)Για να προσομοιώσει ο Strategy Tester την κίνηση των τιμών μεταξύ των σημείων ελέγχου χρησιμοποιούνται αλγόριθμοι από βιβλιοθήκες προκαθορισμένων προτύπων. Η κίνηση που προκύπτει από την χρήση των αλγορίθμων αυτών εμπεριέχει ένα βαθμό τυχαιότητας, καθώς το σύστημα δεν μπορεί να γνωρίζει την ακριβή κίνηση εντός του μικρότερου διαθέσιμου timeframe. Για παράδειγμα για ένα bar Μ1 είναι αποθηκευμένο στα ιστορικά δεδομένα μόνο οι τιμές για άνοιγμα, κλείσιμο, υψηλό και χαμηλό. Κατά συνέπεια και αφού δεν υπάρχουν ιστορικά δεδομένα μικρότερου timeframe για να προσδώσουν μεγαλύτερη ακρίβεια στην κίνηση, η πληροφορία για το πως κινήθηκε ο δείκτης εντός του λεπτού δεν υπάρχει και γι’ αυτό προσομοιώνεται βάσει των αλγορίθμων. Επειδή όμως τα δεδομένα Μ1 για την συντριπτική πλειοψηφία των κινήσεων θεωρούνται άκρως ακριβή, η προσομοίωση θεωρείται και αυτή εξαιρετικά αξιόπιστη.
Οδηγός ενημέρωσης Ιστορικών Δεδομένων
Πολλές φορές τα δεδομένα ενός διαγράμματος στο Metatrader 4 μπορεί να είναι προβληματικά. Αυτό συμβαίνει συνήθως σε demo λογαριασμούς και γι’ αυτό προτείνεται γενικώς τα backtests να πραγματοποιούνται σε live λογαριασμούς. Πρέπει επίσης να σημειωθεί ότι τα δεδομένα μπορεί να διαφέρουν λίγο μεταξύ διαφορετικών brokers. Αυτό συμβαίνει για δύο λόγους. Πρώτον διότι δεν αντλούν όλοι οι brokers ρευστότητα από τους ίδιους παρόχους και δεύτερον διότι το spread μεταξύ τιμής αγοράς και τιμής πώλησης διαφέρει ανάλογα με τον broker. Αυτή η διαφορά μπορεί να επηρεάσει σημαντικά την απόδοση ορισμένων Experts, ειδικά αυτών που εκτελούν πολύ συχνές συναλλαγές και έχουν σφιχτά take profit και stop loss (τεχνικές Scalping). Αντιθέτως Experts οι οποίοι εκτελούν κινήσεις σε μεγαλύτερο χρονικό ορίζοντα με μεγάλους στόχους και πιο χαλαρά stop επηρεάζονται ελάχιστα από τις μικροδιαφορές των τιμών μεταξύ των brokers. Κατά συνέπεια η σημασία που θα δοθεί στο θέμα των δεδομένων εξαρτάται και από το είδος του Expert που χρησιμοποιείται. Επίσης η σύγκριση της απόδοσης ενός Expert με δεδομένα από διαφορετικούς brokers, μπορεί να βοηθήσει και στην επιλογή του καταλληλότερου broker.Πολλοί brokers αλλά και διάφορα ανεξάρτητα sites στο διαδίκτυο παρέχουν δωρεάν ιστορικά δεδομένα μονόλεπτων bars (timeframe Μ1). Προτείνεται γενικά η χρήση δεδομένων που προέρχονται από τον broker στον οποίο o χρήστης διαθέτει χρηματιστηριακό λογαριασμό, διότι έτσι τα backtests που θα εκτελεστούν θα είναι πιο κοντά στις πραγματικές συνθήκες με τις οποίες εκτελεί συναλλαγές. Τα αρχεία ιστορικών δεδομένων μπορεί να αναζητηθούν με τις λέξεις κλειδιά Μ1 και το όνομα του χρηματιστηριακού δείκτη (π.χ. EURUSD, DAX). Έχουν είτε την μορφή αρχείων κειμένου, με επεκτάσεις *.txt, *.prn, *.csv ή την μορφή αρχείων ιστορικών δεδομένων της Metaquotes, με επέκταση *.hst. Αφού ο χρήστης “κατεβάσει” το αρχείο ιστορικών δεδομένων πρέπει να ακολουθήσει μία διαδικασία που περιγράφεται αμέσως παρακάτω και στην οποία χρησιμοποιείται το script Period_converter (υπάρχει προεγκατεστημένο στο Metatrader).Πριν ξεκινήσει η διαδικασία πρέπει να επιλεχθεί η δυνατότητα φόρτωσης του μέγιστου αριθμού ιστορικών δεδομένων. Αυτό γίνεται από το μενού ως εξής: Tools (Εργαλεία) – Options (Επιλογές) και από το παράθυρο που ανοίγει επιλογή της καρτέλας Charts (Διαγράμματα). Στο πεδίο Max Bars in history (Μέγιστο πλήθος bars ιστορικού) αλλαγή του αριθμού που υπάρχει με τον μεγαλύτερο επιτρεπτό αριθμό, δηλ. 9999999999999 (βλ. Εικόνα 23).
Εικόνα 23 (Αλλαγή ρύθμισης Μέγιστου Πλήθους Bars Ιστορικού)Η διαδικασία ξεκινάει με την ενημέρωση του ιστορικού των δεδομένων Μ1 ως εξής: επιλογή από το μενού Tools – History Center (Κέντρο Ιστορικού) και εμφανίζεται ένα παράθυρο μέσω του οποίου γίνεται η διαχείριση του ιστορικού δεδομένων (βλ. Εικόνα 24).
Εικόνα 24 (Κέντρο Ιστορικού)Επιλέγεται στην αριστερή στήλη ο δείκτης που ενδιαφέρει τον χρήστη (για το παράδειγμα χρησιμοποιείται η ισοτιμία EURUSD) και εμφανίζεται μία λίστα με όλα τα timeframes (M1 έως MN). Αφού γίνει επιλογή του timeframe M1 και στην συνέχεια κλικ στο μπουτόν Import (Εισαγωγή), ανοίγει ένα νέο παράθυρο (βλ. Εικόνα 25) μέσω του οποίου εισάγεται το αρχείο των ιστορικών δεδομένων. Πατώντας το μπουτόν Browse (Αναζήτηση) ανοίγει νέο παράθυρο όπου επιλέγεται το αρχείο.
Εικόνα 25 (Εισαγωγή αρχείου Ιστορικών Δεδομένων)Μόλις φορτωθεί το αρχείο εμφανίζονται σε γραμμές τα ιστορικά δεδομένα ανά λεπτό. Κάνοντας κλικ στο μπουτόν ΟΚ τα δεδομένα φορτώνονται αυτομάτως στην βάση δεδομένων του Metatrader. Το διάγραμμα Μ1 του EURUSD είναι πλέον ανανεωμένο με τα νέα ιστορικά δεδομένα. Η διαδικασία συνεχίζεται με το άνοιγμα ενός νέου διαγράμματος Μ1 και την σκυτάλη παίρνει πλέον το script Period_converter. Το script αυτό εκτελεί ανάγνωση της βάσης δεδομένων Μ1, μετατρέπει τα δεδομένα σε άλλο timeframe, ανάλογα με την παράμετρο εισόδου που θα δώσει ο χρήστης και τα αποθηκεύει στο αντίστοιχο αρχείο ώστε να είναι διαθέσιμα για χρήση. Η εισαγωγή του script γίνεται μέσω του Navigator (βλ. Εικόνα 26). Μόλις το script εισαχθεί στο διάγραμμα Μ1 εμφανίζεται ένα παράθυρο όπου επιλέγεται από τον χρήστη η παράμετρος εισόδου ExtPeriodMultiplier (βλ. Εικόνα 27).
Εικόνα 26 (Script period_converter)Η παράμετρος αυτή καθορίζει το timeframe της μετατροπής που θα εκτελέσει το Script σε λεπτά. Άρα εάν ο χρήστης επιθυμεί να εκτελέσει ενημέρωση της βάσης δεδομένων Μ5 επιλέγει 5, εάν θέλει Η1 επιλέγει 60 κοκ.
Εικόνα 27 (Επιλογή timeframe μετατροπής δεδομένων)Κατά την φόρτωση και ολοκλήρωση της λειτουργίας του Script, στην καρτέλα Experts του Τερματικού εμφανίζονται ενημερωτικά μηνύματα, όπου καταγράφεται η επιλογή της παραμέτρου εισόδου ExtPeriodMultiplier και το πλήθος των εγγραφών που έλαβαν χώρα.
Εικόνα 28 (Μηνύματα ενημέρωση λειτουργίας period_converter)Επειδή για την εκτέλεση backtest σε λειτουργία Every Tick απαιτούνται όλα τα μικρότερα timeframes από αυτό που χρησιμοποιεί ο Expert, ουσιαστικά η διαδικασία αυτή επαναλαμβάνεται για τις παραμέτρους 5 (Μ5), 15 (Μ15), 30 (Μ30), 60(Η1), 240(Η4), 1440(D1), για να είναι διαθέσιμα τα δεδομένα σε όλα τα timeframes σε κάθε περίπτωση.Μετά την πρώτη φόρτωση του script στο διάγραμμα Μ1 και εφόσον ο χρήστης συνεχίσει την επαναφόρτωση του στο ίδιο διάγραμμα, για να συνεχίσει την διαδικασία και για τα υπόλοιπα timeframes, εμφανίζεται το μήνυμα της εικόνας 29. Αρκεί να πατηθεί το μπουτόν Yes και η λειτουργία του Script συνεχίζεται χωρίς κανένα πρόβλημα.
Εικόνα 29 (Μήνυμα διακοπής λειτουργίας Script)
Βελτιστοποίηση Experts με την χρήση του Strategy Tester
Ο Strategy Tester αποτελεί ένα εργαλείο του Metatrader 4, που δίνει την δυνατότητα αυτόματης εκτέλεσης διαδοχικών backtests ενός Expert, για ένα συγκεκριμένο εύρος τιμών των παραμέτρων εισόδου. Η ολοκλήρωση της διαδικασίας αυτής εξάγει τα αποτελέσματα για όλους τους δυνατούς συνδυασμούς που επιλέχθηκαν και στην συνέχεια ο χρήστης θέτοντας διάφορα κριτήρια, μπορεί να προσδιορίσει την παραμετροποίηση, που οδηγεί το σύστημα στα βέλτιστα αποτελέσματα. Στην ενότητα αυτή θα γίνει μία λεπτομερής αναφορά σε όλες τις λειτουργίες του Strategy Tester που αφορούν την βελτιστοποίηση των Experts.
Εκτέλεση Ελέγχου Βελτιστοποίησης
Στην Εικόνα 30 φαίνεται το παράθυρο του System Tester και σημειώνονται με κόκκινα πλαίσια τα πεδία που ο χρήστης επιλέγει τις ρυθμίσεις του ελέγχου βελτιστοποίησης και με πράσινο πλαίσιο οι δύο καρτέλες όπου το σύστημα εξάγει τα αποτελέσματα του ελέγχου.Για να εκτελεστεί έλεγχος βελτιστοποίησης ενός Expert, πρέπει να ενεργοποιηθεί το check box με την ένδειξη Optimization (βλ. Εικόνα 30). Διαφορετικά οποιαδήποτε άλλη ρύθμιση και να γίνει, ο Tester θα εκτελέσει ένα μόνο backtest με τις αρχικές τιμές των παραμέτρων εισόδου του Expert.
Εικόνα 30 (Strategy Tester)Ο ορισμός του εύρους των παραμέτρων εισόδου για την εκτέλεση του ελέγχου βελτιστοποίησης γίνεται πατώντας το μπουτόν Expert properties. Εμφανίζεται ένα νέο παράθυρο με τρεις καρτέλες:
- Καρτέλα Testing: Στο πεδίο Optimization υπάρχουν οι επιλογές:
- Optimized Parameter: Επιλογή της παραμέτρου βελτιστοποίησης (βλ. Εικόνα 31). Κατά την εκτέλεση ενός ελέγχου βελτιστοποίησης ο Tester ταξινομεί τα αποτελέσματα βάσει της τιμής αυτή της παραμέτρου. Οι δυνατές επιλογές είναι οι εξής:
Εικόνα 31 (Καρτέλα Testing)
- Balance (Κεφάλαιο)
- Profit Factor (Συντελεστής Κέρδους)
- Expected Payoff (Μαθηματική Προσδοκία Κέρδους)
- Maximal Drawdown (Μέγιστο Drawdown)
- Drawdown Percent (Ποσοστιαίο Drawdown)
- Καρτέλα Inputs: Ρύθμιση των παραμέτρων εισόδου που επηρεάζουν την λειτουργία του Expert (βλ. Εικόνα 32). Από τα check boxes αριστερά των παραμέτρων επιλέγεται εάν μία παράμετρος θα λάβει χώρα στον έλεγχο βελτιστοποίησης ή όχι. Για όποια παράμετρο επιλεχθεί, θα πρέπει να οριστούν επίσης η τιμή εκκίνηση (Start), η τιμή τερματισμού (Stop) και το βήμα (Step). Οι μεταβλητές που δεν επιλέγονται κρατούν σταθερή την τιμή του πεδίου Value. Για παράδειγμα στην Εικόνα 32 η μεταβλητή TakeProfit θα λάβει τιμές 30, 40, 50, … 100, η μεταβλητή Lots 0.1, 0.2 … 1 και η μεταβλητή TrailingStop 30, 40, … 100. Έτσι θα εκτελεστούν backtests του Expert για όλους τους δυνατούς συνδυασμούς αυτών των παραμέτρων.
Εικόνα 32 (Καρτέλα Inputs)
- Καρτέλα Optimization: Δυνατότητα επιλογής περιορισμών στον έλεγχο βελτιστοποίησης (βλ. Εικόνα 33). Εάν ο χρήστης θεωρεί ότι η απόδοση ενός Expert δεν μπορεί να ξεπεράσει κάποια όρια, ενεργοποιεί τα αντίστοιχα πεδία και στην στήλη Value καθορίζεται το αντίστοιχο όριο. Αν π.χ. ο χρήστης θέλει να ακυρώσει ένα backtest, εάν ο Expert εκτελέσει πάνω από 10 συνεχόμενες ζημιογόνες συναλλαγές, επιλέγει το πεδίο “Consecutive loss trades” και δίνει τιμή 10 στο αντίστοιχο πεδίο της στήλης Value. Οι δυνατές επιλογές είναι οι εξής:
Εικόνα 33 (Καρτέλα Optimization)
- Balance minimum (Ελάχιστο υπόλοιπο κεφαλαίου)
- Profit maximum (Μέγιστο Κέρδος)
- Minimal margin level % (Ελάχιστο επίπεδο περιθωρίου ασφάλισης %)
- Maximal drawdown (Μέγιστο drawdown)
- Consecutive loss (Διαδοχική απώλεια κεφαλαίου)
- Consecutive loss trades (Διαδοχικές ζημιογόνες συναλλαγές)
- Consecutive win (Διαδοχικό κέρδος κεφαλαίου)
- Consecutive win trades (Διαδοχικές κερδοφόρες συναλλαγές)
Μόλις ολοκληρωθούν όλες οι επιθυμητές επιλογές με κλικ στο μπουτόν ΟΚ γίνεται επιστροφή στην βασική οθόνη του Tester και πατώντας το μπουτόν Start ξεκινά η διαδικασία βελτιστοποίησης. Ο χρόνος που απαιτείται για να ολοκληρωθεί η διαδικασία εξαρτάται από την πολυπλοκότητα του Expert και το πλήθος των δυνατών συνδυασμών των παραμέτρων που έχει επιλέξει ο χρήστης. Τα αποτελέσματα που εξάγονται απεικονίζονται στις καρτέλες Optimization Results και Optimization Graph.
Καρτέλα Optimization Results
Σε κάθε βελτιστοποίηση εκτελούνται τόσα backtests όσοι είναι οι δυνατοί συνδυασμοί των παραμέτρων εισόδου που επέλεξε ο χρήστης. Στην καρτέλα Optimization Results (Αποτελέσματα Βελτιστοποίησης) απεικονίζονται στοιχισμένα σε έναν πίνακα τα αποτελέσματα όλων των backtests που εκτελέστηκαν (βλ. Εικόνα 34).
Εικόνα 34 (Strategy Tester – Καρτέλα Optimization Results)Ο πίνακας αυτός περιέχει 8 στήλες με τα εξής πεδία:
- Pass: Αύξων αριθμός εκτέλεσης βελτιστοποίησης. Για κάθε έναν συνδυασμό των παραμέτρων εισόδου το σύστημα εκτελεί ένα backtest. Για κάθε νέο backtest ο αριθμός αυτός αυξάνεται κατά ένα.
- Profit: Μεικτό κέρδος (Συνολικό κέρδος – Συνολική Ζημία).
- Total Trades: Σύνολο εκτελεσθέντων συναλλαγών
- Profit Factor: Συντελεστής Κέρδους (Απόλυτο Κέρδος/Απόλυτη Ζημία). Τιμή κάτω από την μονάδα αποτελεί ένδειξη ζημιογόνου επενδυτικού συστήματος.
- Expected Payoff: Μαθηματική Προσδοκία Κέρδους (Συνολικό Κέρδος/Σύνολο Συναλλαγών). Ένας πολύ σημαντικός όρος που χρησιμοποιείται κατά κόρον σχεδόν σε όλες τις μεθοδολογίες Διαχείρισης Ρίσκου και εκφράζει την μέση απόδοση του συστήματος ανά κίνηση.
- Drawdown $: Μέγιστη συνεχόμενη ζημία σε σχέση με το αρχικό κεφάλαιο του λογαριασμού.
- Drawdown %: Μέγιστη συνεχόμενη ζημία σε σχέση με το αρχικό κεφάλαιο σε ποσοστιαία αναλογία.
- Inputs: Οι επιλογές των παραμέτρων εισόδου του Expert για τις οποίες εκτελέστηκε το αντίστοιχο backtest.
Κάνοντας κλικ στην επικεφαλίδα του πίνακα ο χρήστης μπορεί να επιλέξει βάσει ποιας παραμέτρου θέλει να στοιχίσει τα αποτελέσματα της βελτιστοποίησης. Όταν ολοκληρώνεται η βελτιστοποίηση η στοίχιση γίνεται βάσει του αύξοντα αριθμού εκτέλεσης (1η στήλη) και με στοίχιση από το μικρότερο προς το μεγαλύτερο. Στην επικεφαλίδα της παραμέτρου, βάσει της οποίας στοιχίζονται τα αποτελέσματα, εμφανίζεται ένα βελάκι (βλ. Εικόνα 34 με μπλε κύκλο). Εάν το βελάκι δείχνει προς τα επάνω, η στοίχιση γίνεται από το μικρότερο προς το μεγαλύτερο, ενώ αν δείχνει προς τα κάτω το αντίθετο. Κάνοντας κλικ την πρώτη φορά σε μία παράμετρο επιλέγεται στοίχιση από το μικρότερο προς το μεγαλύτερο. Εάν ο χρήστης θέλει να αντιστρέψει την στοίχιση αρκεί να ξανακάνει κλικ στο ίδιο σημείο. Εάν για παράδειγμα πρέπει να στοιχηθούν τα αποτελέσματα βάσει την μαθηματικής προσδοκίας κέρδους και με στοίχιση από την μεγαλύτερη προς την μικρότερη τιμή, αρκεί να γίνει δύο φορές κλικ στην επικεφαλίδα της στήλης Expected Payoff (βλ. Εικόνα 35).
Εικόνα 35 (Καρτέλα Optimization Results – Στοίχιση αποτελεσμάτων βάσει παραμέτρου επιλογής του χρήστη)Κάνοντας δεξί κλικ οπουδήποτε μέσα στην καρτέλα Optimization Results, εμφανίζεται ένα μενού, το οποίο περιέχει την επιλογή “Save As Report” (βλ. Εικόνα 36).
Εικόνα 36 (Αποθήκευση αποτελεσμάτων βελτιστοποίησης σε εξωτερικό αρχείο αναφοράς)Επιλέγοντας την δίνεται η δυνατότητα να αποθηκευτούν τα αποτελέσματα της βελτιστοποίησης ως αναφορά σε αρχείο τύπου *.html (βλ. Εικόνα 37).
Εικόνα 37 (Αρχείο αναφοράς βελτιστοποίησης html)
Καρτέλα Optimization Graph
Στην καρτέλα Optimization Graph (Γράφημα Βελτιστοποίησης) αποτυπώνεται ένα διάγραμμα που στον οριζόντιο άξονα έχει τον αύξων αριθμό εκτέλεσης του backtest (1η στήλη του πίνακα Optimization Results) και στον κάθετο την παράμετρο βελτιστοποίησης που έχει οριστεί στην καρτέλα Testing (βλ. Εικόνα 38). Έτσι ο χρήστης έχει την δυνατότητα να δει συγκριτικά τα αποτελέσματα των backtests. Πηγαίνοντας τον κέρσορα του ποντικιού πάνω σε κάποια από τις κουκίδες του διαγράμματος εμφανίζεται ένα κίτρινο πλαίσιο όπου αναγράφεται η τιμή της παραμέτρου βελτιστοποίησης και οι παράμετροι εισόδου του αντίστοιχου backtest (βλ. Εικόνα 38 – μωβ πλαίσιο).
Εικόνα 38 (Strategy Tester – Καρτέλα Optimization Graph)Αριστερά επάνω στο διάγραμμα αναγράφεται η παράμετρος βελτιστοποίησης. Στην Εικόνα 39 απεικονίζεται η βελτιστοποίηση του ίδιου Expert με τις ίδιες εισόδους, αλλά για παράμετρο βελτιστοποίησης Expected Payoff.
Εικόνα 39 (Strategy Tester – Καρτέλα Optimization Graph)Κάνοντας δεξί κλικ εντός του Optimization Graph εμφανίζεται ένα μενού, το οποίο περιέχει ως πρώτη επιλογή “2D Surface” (βλ. Εικόνα 40).
Εικόνα 40 (Επιλογή διαγράμματος 2D Surface)Επιλέγοντάς την το γράφημα αλλάζει και παίρνει την μορφή της Εικόνας 41. Στην μορφή αυτή δίνεται η δυνατότητα να συγκριθεί η απόδοση της παραμέτρου βελτιστοποίησης βάσει δύο εκ των παραμέτρων εισόδου. Κάνοντας δεξί κλικ μέσα στο διάγραμμα “2D Surface”, εκτός των προηγούμενων επιλογών εμφανίζονται πλέον και οι επιλογές X-Axis (Άξονας Χ) και Y-Axis (Άξονας Υ), στις οποίες δίνεται η δυνατότητα επιλογής οποιασδήποτε εκ των παραμέτρων εισόδου του Expert (βλ. Εικόνα 41). Όσο πιο πάνω και δεξιά βρίσκεται ένας συνδυασμός των δύο παραμέτρων, τόσο ισχυρότερη είναι η απόδοση και το αντίθετο. Στο διάγραμμα χρησιμοποιείται επίσης χρωματικός κώδικας σε αποχρώσεις του πράσινου. Όσο πιο έντονο το χρώμα ενός συνδυασμού, τόσο ισχυρότερη η απόδοση.
Εικόνα 41 (Διάγραμμα τύπου 2D Surface)Εάν οι παράμετροι εισόδου είναι περισσότεροι από δύο, τότε ο χρήστης πρέπει να απομονώσει τους συνδυασμούς παραμέτρων που τον ενδιαφέρουν ανά δύο και να τους μελετήσει ξεχωριστά. Όπως και στο προηγούμενο διάγραμμα, όταν ο κέρσορας βρίσκεται πάνω σε κάποιο από τα πράσινα πεδία, εμφανίζεται το ίδιο κιτρινωπό πλαίσιο που ενημερώνει τον χρήστη για τις διάφορες παραμέτρους του συνδυασμού παραμέτρων (βλ. Εικόνα 42).
Εικόνα 42 (Διάγραμμα τύπου 2D Surface)Εάν πατηθεί ξανά η επιλογή “2D Surface ”, το γράφημα επιστρέφει στην αρχική του μορφή. Στο μενού του δεξιού κλικ υπάρχουν επίσης οι επιλογές ”Copy” και “Save As Picture” (βλ. Εικόνα 41), μέσω των οποίων ο χρήστης μπορεί να αντιγράψει ή να αποθηκεύσει απευθείας το γράφημα ως εικόνα.