J'ai décidé d'utiliser Quantopian à Un certain événement, alors je suis allé sur Tutorial. J'ai essayé de résumer les points qui sont susceptibles d'être des points. Puisqu'il s'agit d'une super-traduction qui a été mâchée (bienvenue à Tsukkomi), veuillez vous référer au document officiel si vous souhaitez le confirmer correctement.
Qu'est-ce que Quantopian? Si vous vous référez à cet article, les fonctionnalités que je pensais bonnes sont les suivantes. ..
Enregistrez-vous en tant qu'utilisateur sur www.quantopian.com et sélectionnez «Recherche - Algorithmes - Nouvel algorithme» pour afficher l'EDI sur votre navigateur.
Vous pouvez créer un algorithme en éditant le code dans le modèle et en sélectionnant Build Algorithm
pour exécuter un test simple. Sélectionnez Run Full Backtest
pour une vérification plus approfondie.
Quantopian a ses propres règles d'espace de nom et de nom de fonction. Si vous ne comprenez pas cela, vous serez soudainement coincé, je vais donc l'expliquer le plus attentivement possible.
Une instance globale est créée sans rien définir.
Les fonctions décrites ci-dessous accèdent aux attributs de cette instance pour obtenir les informations requises. Il semble être une bonne idée d'ajouter des attributs arbitraires à cet objet context
sans créer de variable globale (objet).
C'est mon imagination, mais si tous les paramètres passés à la fonction sont utilisés comme arguments, il sera inefficace de partager le même paramètre avec plusieurs fonctions, ou la docstring sera énorme et ce sera difficile. Donc je pense que ça a été conçu comme ça.
Voici un exemple de configuration de l'objet context
. En écrivant ainsi, un objet Apple est créé.
context.aapl = symbol('AAPL')
Comme le contexte, il existe soudainement. L'objet data
contient diverses API pour les informations de tarification.
Dans l'exemple ci-dessous, le dernier cours de l'action est obtenu à partir de l'objet Apple créé ci-dessus.
data.current(context.aapl, 'price')
LESSON 2 Core Functions Sautez la LEÇON 1 et commencez par la LEÇON 2 Quant à la raison, j'ai décidé que cela devait être compris en premier, ce qui est inclus dans la règle initiale susmentionnée.
L'algorithme de Quantopian a trois fonctions principales. Celles-ci doivent être définies par l'utilisateur et non par les fonctions intégrées.
initialize()
Vous aurez certainement besoin d'une fonction portant ce nom. Appelé au début du test de l'algorithme. Spécifiez un objet context
comme argument.
handle_data()
Si vous définissez une fonction avec ce nom, elle sera exécutée toutes les minutes (toutes les minutes de la période de test). Il est utilisé pour obtenir des données sur les prix et pour mettre en place un portefeuille (achat, vente).
Spécifiez l'objet context
et l'objet data
comme arguments.
Si vous voulez l'exécuter quotidiennement ou hebdomadairement, utilisez la fonction schedule_function ()
introduite dans la LESSON 7.
before_trading_start()
Appelé quotidiennement avant le début du trading. Il est utilisé lors de la définition d'une action à négocier le jour même.
Spécifiez l'objet context
et l'objet data
comme arguments.
Hello world Familiarisez-vous avec l'IDE avant de vous lancer dans le tutoriel.
Écrivez le code ci-dessous, sélectionnez «Enregistrer» (s'il n'est pas enregistré), puis sélectionnez «Construire l'algorithme».
def initialize(context):
print('hello world')
Vous devriez voir quelque chose comme ci-dessus dans le volet de droite. ʻLa fonction initialize () est toujours appelée au début de l'algorithme, donc
print ('hello world') est exécuté. La sortie standard s'affiche dans la fenêtre Journaux. Si vous voulez garder un journal de la progression de l'algorithme, il est recommandé d'écrire
print dans la fonction
handle_data ()`.
Par défaut, SPY (SPDR S & P 500 ETF) est défini comme référence. L'algorithme ci-dessus ne prend aucune position, il est donc affiché à 0%.
Ensuite, clonons l'algorithme de LESSON 2 dans le tutoriel.
https://www.quantopian.com/tutorials/getting-started#lesson2
Sélectionner Clone
sur le côté droit ci-dessus lance l'EDI dans un nouvel onglet et clone l'algorithme.
Sélectionnez Build Algorithm
pour tester l'algorithme.
Vous pouvez voir qu'il est sorti dans les journaux toutes les minutes, contrairement au cas de Hello world mentionné ci-dessus. Sélectionnez «Plus» pour agrandir la fenêtre Journaux.
LESSON 1 Introduction Clonons l'algorithme de LESSON 1 dans le tutoriel.
https://www.quantopian.com/tutorials/getting-started#lesson1
Sélectionnez Build Algorithm
pour tester l'algorithme.
Le code ci-dessus est un algorithme pour aspirer les actions Apple. ʻLe second argument '1.00' de order_target_percent () signifie que tous (100%) des fonds sont alloués. La fonction ʻorder_target_percent ()
sera introduite dans la LESSON 4.
Sélectionnez Run Full Backtest
sur la droite pour effectuer un backtest détaillé de l'algorithme.
-> LESSON 3
Recommended Posts