Αλγόριθμοι και Αγορά Συναλλάγματος (Algorithmic Forex)

Χρήση Αλγορίθμων στην Αγορά Συναλλάγματος (Forex)

Ένα αλγοριθμικό σύστημα συναλλαγών (Algorithmic Trading System) αναφέρεται σ’ ένα σύνολο αλγορίθμων ικανών (α) να ερευνούν και να αναλύουν τα δεδομένα των συναλλαγών μιας αγοράς, και (β) να αναπτύσσουν αποτελεσματικούς κανόνες και οδηγίες συναλλαγών. Οι κανόνες αυτοί βασίζονται κυρίως στην τιμή, τον χρόνο, και τον όγκο συναλλαγών και στοχεύουν στην πρόβλεψη της μελλοντικής τάσης των τιμών.

Η Αλγοριθμική προσέγγιση (Algorithmic Trading) αναφέρεται στην έρευνα και την ανάλυση των συνθηκών της αγοράς και των δεδομένων συναλλαγών, προκειμένου να αναπτυχθούν αποτελεσματικές οδηγίες και κανόνες συναλλαγών.

Βασικές Προϋποθέσεις

Αυτές είναι μερικές θεμελιώδεις προϋποθέσεις της αλγοριθμικής προσέγγισης:

I. Τα ιστορικά αποτελέσματα έχουν τουλάχιστον κάποια ικανότητα πρόβλεψης {Sharpe 1994}

ΙΙ. Οι αγορές δεν είναι αλάνθαστες (τουλάχιστον βραχυπρόθεσμα μπορεί να κάνουν λάθη)

III. Οι αγορές έχουν ένα πεπερασμένο βάθος

ΙV. Τα βασικά στοιχεία της αγοράς (τιμή και ποσότητα) καθοδηγούνται από την ανθρώπινη ψυχολογία και τις κοινωνικές αποφάσεις και ως εκ τούτου είναι τυχαία και ασταθή δεδομένα

V. Η λανθασμένη προεξόφληση ενός οικονομικού στοιχείου από την αγορά μπορεί να υπάρξει μόνο για ένα σύντομο διάστημα. Μπορεί δε να ανοίξει ένα παράθυρο ευκαιρίας που σε κάποιο μελλοντικό χρονικό διάστημα θα κλείσει

 

Αυτοματοποιημένα Συστήματα (Automated Trading) & Αλγοριθμικά Συστήματα (Algorithmic Trading)

Διαφοροποιώντας τα Αυτοματοποιημένα από τα Αλγοριθμικά Συστήματα.

Αλγοριθμικά Συστήματα (Algorithmic Trading)

Η Αλγοριθμική προσέγγιση (Algorithmic Trading) αναφέρεται στην έρευνα και την ανάλυση των συνθηκών της αγοράς και των δεδομένων συναλλαγών, προκειμένου να αναπτυχθούν αποτελεσματικές οδηγίες και κανόνες συναλλαγών. Περιλαμβάνει μια μεγάλη ποικιλία παραμέτρων όπως η τιμή, ο χρόνος και ο όγκος συναλλαγών. Στην πραγματικότητα, ένα αλγοριθμικό σύστημα χρησιμοποιεί κοινές τεχνικές κλασσικών οικονομικών μαθηματικών για να προβλέψει τις μελλοντικές τάσεις των τιμών.

Αυτοματοποιημένα Συστήματα (Automated Trading)

Η Αυτοματοποιημένη προσέγγιση (Automated Trading) αναφέρεται περισσότερο στη διαδικασία αυτοματοποίησης των συναλλαγών και όχι τόσο στην έρευνα όπως η Αλγοριθμική προσέγγιση.

Οι διαφορετικές προσεγγίσεις, με μια ματιά:

  • Αλγοριθμική Διαπραγμάτευση → αυτοματοποίηση της έρευνας και της ανάλυσης
  • Αυτοματοποιημένη Διαπραγμάτευση → αυτοματοποίηση της εκτέλεσης συναλλαγών

 

 

Τα Βασικά Μέρη μιας Αλγοριθμικής Μηχανής

Η μονάδα προβλέψεων αναλύει τη δυναμική της αγοράς και ειδικότερα τις πιθανές αλλαγές στη δυναμική της ζήτησης / προσφοράςΈνα αλγοριθμικό σύστημα ενσωματώνει δύο βασικές μονάδες:

  1. Μονάδα Προβλέψεων

Η μονάδα προβλέψεων αναλύει τη δυναμική της αγοράς και ειδικότερα τις πιθανές αλλαγές στη δυναμική της ζήτησης / προσφοράς

  1. Μονάδα Εκτέλεσης

Η μονάδα εκτέλεσης προτείνει και / ή εκτελεί μια συγκεκριμένη συναλλακτική ενέργεια σε συγκεκριμένη τιμή και χρόνο (ανοίγει, τροποποιεί και κλείνει μια σειρά εντολών διαπραγμάτευσης). Η μονάδα εκτέλεσης λειτουργεί ως ένα αυτοματοποιημένο σύστημα συναλλαγών.

 

Κοινές ενότητες για τη δημιουργία δεικτών πρόβλεψης από ένα Αλγοριθμικό Σύστημα.

Αυτές είναι μερικές σημαντικές ενότητες κατά την δημιουργία Δεικτών Πρόβλεψης της αγοράς:

  1. Συσχέτιση μεταξύ διαφορετικών αγορών (» Συσχετισμοί Τιμών Μεταξύ Διαφορετικών Αγορών -Cross-Market Correlations)
  2. Ομαδοποίηση όγκων συναλλαγών (Σημαντικές μεταβολές στον όγκο συναλλαγών μπορούν να προβλέψουν επικείμενες μεταβολές των τιμών)
  3. Ανισορροπίες ζήτησης/προσφοράς (Σημαντικές μεταβολές στον όγκο αγοραστών/πωλητών ενδέχεται να προβλέψουν μεταβολές των τιμών)
  4. Επίδραση των ειδήσεων (Η αντίδραση της αγοράς στις θετικές/αρνητικές ειδήσεις μπορεί να δημιουργήσει ένα προβλέψιμο μοτίβο)
  5. Μετρήσιμη μεταστροφή του κλίματος προσδοκιών της ευρείας πλειοψηφίας των επενδυτών (retail traders)

 

Εργαλεία Αλγοριθμικών Συστημάτων

Αυτά είναι μερικά από τα εργαλεία που αξιοποιούνται από ένα αλγοριθμικό σύστημα:

(α) Μονάδα Έρευνας

Pattern Recognition

Αναγνώριση σχηματισμών κι μοτίβων τιμών με χρήση τεχνικών machine learning

Volume Breakout Analysis

Ανάλυση κομβικών μεταβολών στα δεδομένα του όγκου συναλλαγών

Time Series Analysis

Περιοδική ανάλυση με βάση τον χρόνο

Intermarket Correlation Analysis

Ανάλυση με βάση συσχετισμούς τιμών μεταξύ διαφορετικών αγορών

Market Sentiment

Μετρήσεις θετικών/αρνητικών προσδοκιών της πλειοψηφίας των επενδυτών

(β) Μονάδα Εκτέλεσης

Historical Backtesting

Χρησιμοποιώντας ιστορικά δεδομένα για να αξιολογήσουμε την αποδοτικότητα ενός συστήματος

Monte-Carlo Simulation 

Μοντέλο αξιολόγησης της αποδοτικότητας ενός συστήματος σε ακραίες συνθήκες της αγοράς

Walk-Through Optimization

Βελτιστοποίηση ενός αλγοριθμικού συστήματος βήμα προς βήμα

Εξίσωση Hamilton–Jacobi–Bellman (HJB)

Queuing Theory (Μαθηματικό μοντέλο)

Δείκτες Sharpe/Sortino (» Sharpe Ratio | » Sortino Ratio)

» Εισαγωγή στη Διαχείριση Χαρτοφυλακίου

 

Ποσοτική Ανάλυση (Quantitative Analysis)

Η ποσοτική ανάλυση χρησιμοποιεί μια ευρεία ποικιλία δεδομένων για την ανάπτυξη μοντέλων ικανών να παράγουν σήματα αγορών/πωλήσεων. Τα πρότυπα πρόβλεψης περιλαμβάνουν διάφορα θεμελιώδη και στατιστικά στοιχεία της αγοράς (π.χ. η τάση για επιστροφή στην μέση τιμή μιας περιόδου). Σημειώστε ότι προτού αυτά τα μοντέλα μετατραπούν σε ολοκληρωμένα συστήματα συναλλαγών, πρέπει να δοκιμαστούν επαρκώς με ιστορικά δεδομένα (Historical Backtesting).

 

Μηχανική Εκμάθηση (Machine Learning)

Αναφέρεται στη διαδικασία χρήσης στατιστικών εργαλείων και τεχνικών προκειμένου να προσφέρεται η δυνατότητα σε κάποιο σύστημα να «μάθει» και να βελτιώνεται μέσα στον χρόνο από μόνο του. Η μάθηση σημαίνει αύξηση της απόδοσης του συστήματος χωρίς άμεση ανθρώπινη παρέμβαση. Ένα σύστημα μηχανικής εκμάθησης περιλαμβάνει τα ακόλουθα στοιχεία:

A. Ένα πρόβλημα

B. Μια πηγή δεδομένων

Γ. Ένα μοντέλο

Δ. Έναν αλγόριθμο βελτιστοποίησης

Ε. Επικύρωση και δοκιμή

 

Γλώσσες προγραμματισμού για την δημιουργία αλγοριθμικών συστημάτων

Αυτές είναι οι πιο συχνά χρησιμοποιούμενες γλώσσες προγραμματισμού για την δημιουργία αλγοριθμικών συστημάτων:

  1. Microsoft Visual C++/C# (ιδανική για τη μέγιστη ταχύτητα συναλλαγών)
  2. Python (Open Source -Ιδανική γλώσσα για έρευνα και ιστορικό Back-testing)
  3. MatLab (Γλώσσα μαθηματικών)
  4. R Language (Ελεύθερη γλώσσα στατιστικής ανάλυσης)
  5. Java (Δωρεάν και πολύ δημοφιλής γλώσσα διαδικτυακών εφαρμογών)
  6. MQL (Δωρεάν γλώσσα για τις πλατφόρμες MetaTrader)

 

 

ΣΥΜΠΕΡΑΣΜΑΤΑ

Τα Αλγοριθμικά Συστήματα (Algorithmic Trading) και τα Αυτοματοποιημένα Συστήματα (Automated Trading) αποτελούν διαφορετικές έννοιες

Η Αλγοριθμική προσέγγιση ασχολείται με την αυτοματοποίηση της έρευνας και της ανάλυσης δεδομένων (Research) την στιγμή που η Αυτοματοποιημένη προσέγγιση ασχολείται με την αυτοματοποίηση της εκτέλεσης συναλλαγών (Trading)

Μια αλγοριθμική στρατηγική διαπραγμάτευσης ενσωματώνει δύο βασικά στοιχεία: (α) ενότητα ανάλυσης και πρόβλεψης, και (β) ενότητα εκτέλεσης

Το Machine Learning αναφέρεται στη διαδικασία χρήσης στατιστικών εργαλείων και τεχνικών ώστε τα αλγοριθμικά συστήματα να έχουν τη δυνατότητα να "μαθαίνουν" και να βελτιώνονται από μόνα τους

Οι επενδυτές σήμερα μπορούν να χρησιμοποιήσουν δωρεάν τεχνολογίες για να αναπτύξουν αλγοριθμικά συστήματα (R Language, MQL, κτλ.), αλλά η ‘φιλοξενία’ και η λειτουργία αυτών των συστημάτων απαιτεί σημαντικότατη υπολογιστική δύναμη

Οι θεσμικοί επενδυτές που διαθέτουν σαφώς περισσότερους υπολογιστικούς πόρους έχουν τη δυνατότητα να χρησιμοποιούν πιο πολύπλοκες τεχνικές μοντελοποίησης, βάσει δεδομένων, συχνά αναφερόμενα ως μεγάλα δεδομένα (big data).

 

ΔΗΜΙΟΥΡΓΙΑ ΑΥΤΟΜΑΤΟΠΟΙΗΜΕΝΩΝ ΣΥΣΤΗΜΑΤΩΝ ΧΩΡΙΣ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΗ ΓΝΩΣΗ

Για εκείνους που δεν διαθέτουν δεξιότητες προγραμματισμού και θέλουν να πειραματιστούν με ένα αλγοριθμικό σύστημα, υπάρχουν εφαρμογές στο διαδίκτυο που μ’ ένα μικρό κόστος επιτρέπουν την δημιουργία αυτόνομων αυτοματοποιημένων συστημάτων. Για παράδειγμα, μια αρκετά προηγμένη ηλεκτρονική εφαρμογή και πολύ οικονομική είναι το EA Builder που προσφέρει τη μετατροπή ιδεών σε πλήρως αυτοματοποιημένα συστήματα συναλλαγών.

» Σύνδεση με το EA Builder App

EA Builder και Βασικά χαρακτηριστικά

-Δεν υπάρχει ανάγκη για οποιεσδήποτε προγραμματιστικές δεξιότητες (γραφικό περιβάλλον, χωρίς εντολές κώδικα)

-Μπορεί να δημιουργήσει ρομποτικά συστήματα για την συναλλαγή οποιουδήποτε χρηματιστηριακού προϊόντος σε οποιοδήποτε χρονικό πλαίσιο

-Μπορεί να χρησιμοποιηθεί σε οποιοδήποτε υπολογιστή PC, MAC ή Linux χωρίς εγκατάσταση (web-based)

-Πλήρως δωρεάν για τη δημιουργία δεικτών, ενώ απαιτεί μόνο $97 (εφάπαξ) εάν θέλετε να δημιουργήσετε ρομποτικά συστήματα (Expert Advisors)

-Το εξαγώγιμο αρχείο είναι ένα ενιαίο αρχείο MQL4 / MQL5 που μπορεί να χρησιμοποιηθεί άμεσα στις πασίγνωστες πλατφόρμες MetaTrader4, MetaTrader5, αλλά και σε πλατφόρμα TradeStation.

-Ο τελικός κώδικας μπορεί να χρησιμοποιηθεί σε απεριόριστους λογαριασμούς (χωρίς όρια)

 

TIP: Το EA Builder για τη δημιουργία απλών δεικτών (indicators) είναι εντελώς δωρεάν. Μπορείτε να ξεκινήσετε και να δοκιμάσετε αυτούς τους δείκτες, και αργότερα, να μετατρέψετε τους δείκτες σας σε πλήρως αυτοματοποιημένες στρατηγικές διαπραγμάτευσης.

» Ξεκινήστε φτιάχνοντας ΔΩΡΕΑΝ Indicators στην πλατφόρμα EA Builder

 

 Αλγόριθμοι και Αγορά Συναλλάγματος (Algorithmic Forex)

Γιώργος Πρωτονοτάριος, Αναλυτής Διεθνών Αγορών

για το FxStreet.gr, 31η Οκτωβρίου 2019