Passer aux informations sur le produit
Trading automatisé de Bitcoin avec Python
Trading automatisé de Bitcoin avec Python
Description
Introduction au livre
« Le trading automatisé de Bitcoin avec Python » explique comment développer un programme qui effectue automatiquement des transactions Bitcoin sur les trois principales plateformes d'échange nationales (Korbit, Bithumb, Upbit) et une plateforme d'échange étrangère (Binance) en utilisant Python, un langage de programmation récemment devenu populaire.
Il couvre l'essentiel de la grammaire Python, depuis les bases jusqu'au développement d'un programme de trading automatisé en temps réel 24 heures sur 24, pour les personnes sans expérience en programmation.

Nous allons notamment vérifier la stratégie de rupture de volatilité de Larry Williams par le biais de tests rétrospectifs et développer un programme capable d'effectuer des transactions automatisées en temps réel à l'aide des API des bourses nationales.
De plus, il aborde PyQt, utilisé pour le développement de programmes GUI, et le web scraping, récemment utilisé dans divers domaines, afin que les débutants en Python puissent apprendre la programmation de manière utile et ludique.
Nous fournissons le code source de tous les projets décrits dans le livre.
Dans la version révisée, la méthode de traitement des prix en temps réel à l'aide de web sockets et le contenu relatif à la création de votre propre HTS à l'aide de PyQt ont été ajoutés.

  • Vous pouvez consulter un aperçu du contenu du livre.
    Aperçu

indice
1.
Grammaire Python-1


1.1.
Premiers pas avec Python
1.1.1.
Introduction au cours
1.1.2.
Python
1.1.3.
Pourquoi Python ?
1.1.4.
Installation de Python
1.1.5.
Utilisation de Spyder
1.1.6.
Problèmes pratiques
1.2.
Variables et chaînes de caractères
1.2.1.
Calculatrice Python
1.2.2.
Variable
1.2.3.
Variables de nommage
1.2.4.
chaînes de caractères Python
1.2.5.
Variables et chaînes de caractères
1.2.6.
Indexation de chaînes
1.2.7.
Découpage de chaînes
1.2.8.
Indexation/découpage négatif
1.2.9.
Concaténer des chaînes
1.2.10.
longueur de la corde
1.2.11.
Problèmes pratiques
1.3.
structures de données Python
1.3.1.
Qu'est-ce qu'une structure de données ?
1.3.2.
liste
1.3.3.
Indexation de liste
1.3.4.
Liste de modification
1.3.5.
découpage de liste
1.3.6.
Insérer une liste
1.3.7.
Supprimer les données de la liste
1.3.8.
Maximum/Minimum/Moyenne
1.3.9.
Tuple Python
1.3.10.
Créer un tuple
1.3.11.
Indexation et découpage des tuples
1.3.12.
Ajouter/supprimer des tuples
1.3.13.
dictionnaire
1.3.14.
Créer un dictionnaire
1.3.15.
Indexation par dictionnaire
1.3.16.
Ajout de données à un dictionnaire
1.3.17.
Modification des données du dictionnaire
1.3.18.
Suppression de données d'un dictionnaire
1.3.19.
Récupérer uniquement les valeurs clés d'un dictionnaire
1.3.20.
Récupérer une valeur à partir d'un dictionnaire
1.3.21.
Problèmes pratiques

2.
Grammaire Python-2


2.1.
Instructions conditionnelles en Python
2.1.1 Utilisation de l'éditeur Spyder
2.1.2 instruction if
2.1.3 si/sinon
2.1.4 if/elif/else
2.1.5 Opérateurs de comparaison et logiques
2.1.6 Exercices pratiques
2.2.
boucle
2.2.1 pour l'énoncé
2.2.2 pour et gamme
2.2.3 pour et dictionnaires
2.2.4 Boucles et instructions if
2.2.5 instruction while
2.2.6 Exercices pratiques
2.3.
fonction
2.3.1 Définition des fonctions Python
2.3.2 Les fonctions sont étiquetées
2.3.3 Comprendre les appels de fonction
2.3.4 Exercices pratiques
2.4.
module
2.4.1 Qu'est-ce qu'un module ?
2.4.2 Création d'un module
2.4.3 Comment importer un module
Module de date et d'heure 2.4.4
Module de requête 2.4.5
2.4.6 Exercices pratiques

3.
Classes et PyQt


3.1.
Classe (1)
3.1.1.
Programmation procédurale vs.
programmation orientée objet
3.1.2.
Définition des classes et création des objets
3.1.3.
Ajouter une méthode à une classe
3.1.4.
Mettre de la pâte de haricots rouges dans le bungeoppang
3.1.5.
Constructeur
3.1.6.
Problèmes pratiques
3.2.
Classe (2)
3.2.1.
héritage de classe
3.2.2.
ordre de référence des attributs de classe
3.3.
PyCharm
3.3.1 Introduction à PyCharm
3.3.2.
Installation de PyCharm
3.3.3.
Exécution de PyCharm
3.3.4.
Paramètres de raccourci PyCharm
3.4.
Principes de base de PyQt
3.4.1.
Introduction à PyQt
3.4.2.
Révision des cours
3.4.3.
Principes de base de PyQt
3.4.4.
Widgets et Windows
3.4.5.
Ma propre classe de fenêtre
3.5.
Décoration de fenêtre PyQt
3.5.1.
Redimensionner les fenêtres
3.5.2.
Modifier la barre de titre Windows
3.5.3.
Ajouter un bouton
3.5.4.
Ajouter un événement de clic à un bouton
3.6.
Concepteur Qt
3.6.1.
Utilisation de Qt Designer
3.6.2. Utilisation des fichiers d'interface utilisateur
3.6.3.
Ajouter un événement
3.6.4.
Création d'un vérificateur de prix Korbit
3.6.5. QTimer

4.
Extraction de données Web et Pandas


4.1.
Extraction de données Web - 1
4.1.1.
Exploration et extraction de données du Web
4.1.2. Adresse IP
4.1.3.
Les trois éléments du web
4.1.4. HTML
4.1.5. CSS et CSS Select
4.1.6.
Problèmes pratiques
4.2.
Extraction de données Web - 2
4.2.1. Téléchargement et analyse des documents HTML
4.2.2. Extraction des balises sans identifiants
4.2.3.
API RESTful
4.2.4. JSON
4.3.
Série Pandas
4.3.1.
Qu'est-ce que Pandas ?
4.3.2.
Créer une série
4.3.3.
Spécifier un index lors de la création d'une série
4.3.4.
Indexation/découpage des séries
4.3.5.
Ajouter/Supprimer une série
4.3.6.
Opérations de la série
4.4.
DataFrame Pandas
4.4.1.
Créer un DataFrame
4.4.2.
Création d'un DataFrame - 2
4.4.3.
Indexation/découpage des DataFrames
4.4.4.
Ajout d'un DataFrame
4.4.5.
Décalage de colonne
4.4.6.
Problèmes pratiques

5.
Alerte marché haussier


5.1.
pybithumb
5.1.1.
module pybithumb
5.1.2.
Obtenez une liste des symboles boursiers des cryptomonnaies
5.1.3.
Obtenez le prix actuel
5.1.4.
Informations sur les transactions d'échange
5.1.5.
Ménage
5.1.6.
Obtenez des informations sur plusieurs cryptomonnaies simultanément.
5.1.7.
Gestion des exceptions
5.1.8.
Problèmes pratiques
5.2.
Alerte haussière du marché (1)
5.2.1.
Différencier les marchés haussiers et baissiers à l'aide des moyennes mobiles
5.2.2.
Obtenez des prix de change supérieurs
5.2.3.
Calcul des moyennes mobiles
5.2.4.
Mise en œuvre d'une fonction permettant de distinguer les marchés haussiers et baissiers
5.2.5.
Déterminer si une cryptomonnaie se trouve dans un marché haussier ou baissier
5.3.
Alerte haussière du marché (2)
5.3.1. Création d'une interface utilisateur à l'aide de Qt Designer
5.3.2. Chargement de l'interface utilisateur
5.3.3.
Créer une minuterie
5.3.4.
Imprimer le nom de la cryptomonnaie
5.3.5.
Ajouter les données restantes
5.4.
Alerte haussière sur le marché (Version fil de discussion)
5.4.1. Code de base du thread
5.4.2. Application des fils

6.
Mise en œuvre d'une stratégie de rupture de volatilité


6.1.
API privée Bithumb
6.1.1.
Demande d'accès à l'API Bithumb
6.1.2.
Créez une classe Bithumb
6.1.3.
Enquête sur le solde
6.1.4.
acheter
6.1.5.
Vendre
6.1.6.
ordre de retrait
6.2.
Mise en œuvre d'une stratégie de rupture de volatilité
6.2.1.
Stratégie de rupture de volatilité
6.2.2.
Étape 1 : Relever périodiquement le courant
6.2.3.
Étape 2 : Calculez votre prix cible
6.2.4.
Étape 3 : Mettez à jour vos objectifs à minuit
6.2.5.
Étape 4 : Tentative d'achat
6.2.6.
Étape 5 : Tenter de vendre
6.2.7.
Étape 6 : Sécurité et gestion des exceptions
6.3.
Mise en œuvre d'une stratégie d'investissement basée sur une cassure de volatilité et un marché haussier
6.3.1.
moyenne mobile
6.3.2.
Mise à jour des conditions d'achat

7.
test rétrospectif


7.1.
Préparation des données pour le backtesting
7.1.1. Obtention des données quotidiennes sur les cryptomonnaies
7.1.2.
Enregistrement d'un objet DataFrame dans Excel
7.2.
Test rétrospectif de la stratégie de rupture de volatilité
7.2.1.
Plage de calcul
7.2.2.
Calculer le prix cible
7.2.3.
Achat, vente et retours
7.2.4.
Frais et dérapage
7.2.5.
Trouver la meilleure valeur de k
7.2.6. Calcul du MDD (Maximum Draw Down)
7.3.
Test rétrospectif de la stratégie de rupture de volatilité et de marché haussier
7.3.1.
Test rétrospectif de la stratégie de rupture de volatilité et de marché haussier
7.3.2.
Trouver les cryptomonnaies les plus rentables en 2018

8.
échange de cryptomonnaies


8.1.
Upbit
8.1.1. Demande d'utilisation de l'API
8.1.2.
Installation de pyupbit
8.1.3.
Demande de code boursier
8.1.4.
Demande de prix actuelle
8.1.5.
Consulter les données antérieures
8.1.6.
Enquête auprès des ménages
8.1.7.
Enquête sur le solde
8.1.8.
Achat/Vente
8.1.9.
ordre de retrait
8.2.
Korbit
8.2.1. Demande d'utilisation de l'API
8.2.2.
Installation de pykorbit
8.2.3.
Demande de code boursier
8.2.4.
Demande de prix actuelle
8.2.5.
Consulter les données antérieures
8.2.6.
Enquête auprès des ménages
8.2.7.
Enquête sur le solde
8.2.8.
Achat/Vente
8.2.9.
ordre de retrait
8.3.
Binance
8.3.1. Demande d'utilisation de l'API
8.3.2.
Installation de ccxt
8.3.3.
Demande de code boursier
8.3.4.
Demande de prix actuelle
8.3.5.
Consulter les données antérieures
8.3.6.
Enquête auprès des ménages
8.3.7.
Enquête sur le solde
8.3.8.
Achat/Vente
8.3.9.
ordre de retrait

9.
Traitement des prix en temps réel via WebSockets


9.1 Introduction aux WebSockets
9.2 Principes de base d'asyncio
9.2.1 Méthodes d'appel synchrones et asynchrones
9.2.2 Coroutines
9.3 Notions de base sur les processus et les threads
9.3.1 Processus et threads
9.3.2 Planification des threads
Module multiprocesseur 9.3.3
9.4 Bithumb Python WebSocket
9.4.1 Installation du module websockets
9.4.2 Client WebSocket
9.4.3 S'abonner au WebSocket d'échange Bithumb
9.4.4 Sortie de données en temps réel
9.4.5 Sortie de données en temps réel via pybithumb
9.5 Cobit Python WebSocket
9.5.1 Connexion WebSocket
9.5.2 Demande d'abonnement à la chaîne
9.5.3 Sortie de données en temps réel
9.6 Upbit Python WebSocket
9.6.1 Demande d'abonnement à une chaîne
9.6.2 Sortie de données en temps réel
9.6.3 Sortie de données en temps réel via pyupbit

10.
Créez votre propre HTS


10.1.
Graphique des prix en temps réel
10.1.1. Paramètres de mise en page de l'interface utilisateur
10.1.2.
Chaînage de fonctions en Python
10.2.
Carnet de commandes en temps réel
10.2.1. Paramètres de mise en page de l'interface utilisateur
10.2.2.
Chaînage de fonctions en Python
10.3.
Fenêtre de vue d'ensemble en temps réel
10.3.1. Paramètres de mise en page de l'interface utilisateur
10.3.2.
Chaînage de fonctions en Python
10.4.
Écran intégré
SPÉCIFICATIONS DES PRODUITS
- Date de publication : 22 mars 2021
- Nombre de pages, poids, dimensions : 424 pages | 188 × 240 × 30 mm
- ISBN13 : 9791196608811
- ISBN10 : 1196608814

Vous aimerez peut-être aussi

카테고리