Développons un algorithme d'investissement avec Python 1

introduction

Notez comment utiliser Smart Trade, une plateforme pour investir dans des actions en Python.

Qu'est-ce que le commerce intelligent

top.png

Smart Trade fournit aux ingénieurs un environnement de négociation de système d'investissement boursier à la pointe de la technologie, essentiellement gratuit. L'algorithme développé sera disponible à la vente dans votre propre commerce ou sur le marché Smart Trade.

https://beta.smarttrade.co.jp/

Les fonctions qui peuvent être utilisées dans la version bêta sont encore limitées, mais maintenant elles sont toutes publiées gratuitement. Sera-ce comme l'App Store dans le futur?

2018/1/11 postscript: URL de la version officielle pour les développeurs https://quantx.io/developer

Que puis-je faire?

Vous pouvez analyser les données de cours boursières passées du Japon et de la Chine avec Python. S'il y a un moment où il semble correct d'acheter ou de vendre, vous pouvez simuler le profit que vous avez réalisé en commandant à l'aide de l'API Smart Trade (cela s'appelle un «backtesting»). Masu).

De plus, comme il dispose d'une fonction simple de type outil de BI, vous pouvez simplement afficher le cours de l'action sur un graphique, vérifier les valeurs de divers indicateurs techniques calculés et vérifier visuellement le moment réel d'achat et de vente. Tu peux vérifier.

Comment l'analysez-vous?

L'analyse est écrite en Python. Puisque WebIDE est préparé, vous pouvez vérifier le résultat tel quel en écrivant et en exécutant le programme sur le navigateur.

Différentes données sont préparées sur la plateforme Smart Trade, vous pouvez donc facilement l'utiliser en déclarant simplement les données que vous souhaitez utiliser. Puisque les pandas sont utilisés pour la manipulation réelle des données, je pense que quiconque peut utiliser des pandas peut l'essayer relativement facilement.

Hello System Trade!

Tout d'abord, affichons le cours de l'action 9984 (Softbank) sur le graphique comme Hello World. Sur l'écran de codage Python, écrivez le code suivant et exécutez-le.

def initialize(ctx):
    #Paramètres d'algorithme
    ctx.configure(
      target="jp.stock.daily",    #Algorithme pour les stocks quotidiens des actions japonaises
      channels={
        "jp.stock": {
          "symbols": [
            "jp.stock.9984",      #Utiliser les données SoftBank
          ],
          "columns": [
            "close_price",        #le dernier prix
            "close_price_adj",    #le dernier prix(Après ajustement pour le fractionnement d'actions)
          ]
        }
      }
    )

def handle_signals(ctx, date, current):
    '''
    current: pd.DataFrame
    '''
    pass

Quand tu cours

summary.png

Le graphique est sorti. Il n'y a pas d'inégalité, mais cela signifie que les actifs n'ont pas changé parce que nous n'achetons ni ne vendons. En regardant les détails de la marque,

detail.png

Ça sort correctement!

La prochaine fois, j'afficherai la moyenne mobile.

Informations de référence

URL de la version officielle de PostScript 2018/1/11:

Recommended Posts

Développons un algorithme d'investissement avec Python 1
Écrivons FizzBuzz avec une erreur: Version Python
Créer un œuf avec python
[Python3] Méthode Dikstra avec 14 lignes
Écrivons python avec cinema4d.
Construisons git-cat avec Python
Découpez une image avec python
Faisons une interface graphique avec python.
J'ai envoyé un SMS avec Python
Jouons avec Excel avec Python [Débutant]
Faisons du scraping d'images avec Python
Faisons un graphe avec python! !!
Dessinez une illustration avec Python + OpenCV
[Python] Envoyez des e-mails avec Outlook
Analysons la voix avec Python # 1 FFT
Algorithme Python
Commerce système à partir de Python3: investissement à long terme
[Python] Création d'un environnement avec Anaconda [Mac]
Faisons un jeu de shiritori avec Python
Remarques lors de la création d'un environnement avec python
Créons un groupe gratuit avec Python
Rechercher le labyrinthe avec l'algorithme python A *
[Introduction à Python] Utilisons foreach avec Python
Lisons le fichier RINEX avec Python ①
Développer des applications Windows avec Python 3 + Tkinter (Préparation)
[Python] Rendons matplotlib compatible avec le japonais
[Python] Créez rapidement une API avec Flask
Scraping depuis un site authentifié avec python
Faisons la manipulation des données MySQL avec Python
Créez une application de mots anglais avec python
Créez un framework Web avec Python! (1)
Envoyer un e-mail avec Amazon SES + Python
Rejoignez un juge en ligne avec Python 3.x
Entendons-nous bien avec Python # 0 (Construction de l'environnement)
Créez un framework Web avec Python! (2)
[Blender x Python] Commençons avec Blender Python !!
Qu'est-ce qu'un algorithme? Introduction à l'algorithme de recherche] ~ Python ~
Jeu à la main en Python (commençons avec AtCoder?)
Expliquons l'allocation d'actifs par le modèle Black Ritterman (avec un exemple d'exécution par Python)
Statistiques avec python
Résolvons des équations linéaires simultanées avec Python sympy!
Créez une application qui devine les étudiants avec Python
Mémorandum Python (algorithme)