Au fur et à mesure que les transactions quantitatives d'actifs blockchain se développent, de plus en plus de traders d'actifs blockchain sont conscients de cet outil. Mais en tant que nouveau membre de ce cercle, vous êtes déconcerté par de nombreux concepts. Vous êtes déconcerté par les noms, les logiciels, les informations, etc. Cet article vous emmène à connaître, à connaître les concepts courants et à comprendre les différentes informations utiles dans la négociation quantitative des actifs de la blockchain. Cet article présente des concepts de base, qui sont ensuite illustrés par des exemples sur la plateforme de négociation quantitative FMZ.
Tout d'abord, nous devons comprendre le concept d'échange, nous avons besoin d'actifs de blockchain dans les mains des traders pour spéculer, investir, etc. Toutes les transactions sont actuellement effectuées.
Numéro de compte Un compte d'échange est un compte enregistré ou ouvert sur un échange. Les actifs de la blockchain peuvent être stockés dans ce compte pour effectuer des transactions. Certains comptes peuvent être créés ou configurés sous le compte principal d'un échange.Compte sous-jacentPour faciliter la négociation et la spéculation des actifs séparés. La création, le mécanisme, l'utilisation, etc. des demandes de sous-comptes de chaque bourse varient. Vous devez consulter ces informations sur le site Web de l'échange.
Une fois que vous vous êtes connecté à un compte sur le site d'un échange, vous pouvez généralement voir que l'endroit où les actifs de la blockchain peuvent être stockés est divisé en plusieurs panneaux de comptes (ceux-ci sont des comptes logiques, pas des comptes d'échange).Compte de portefeuille,Compte de change,Compte financier、Compte de négociation contractuelAinsi, il est possible que toutes les différences soient spécifiques à chaque transaction. Il est généralement nécessaire de vérifier où se trouve l'actif suivant la charge après avoir couru vers les actifs de la blockchain (monnaie) après avoir couru vers un compte (peut-être dans un compte de portefeuille, ou directement vers un compte de transaction de pièces).
Interface API pour le système d'échange
Beaucoup d'étudiants qui n'ont jamais utilisé cette fonctionnalité de l'échange se demanderont peut-être: Qu'est-ce qu'une API?
L'API est l'interface fournie par le système d'échange pour permettre l'opération du programme. En termes simples, l'échange fournit un passage permettant aux programmes (scripts de disque réel) d'effectuer des opérations dans le système d'échange (commande, retrait, chèque, vérification des actifs du compte, vérification des stocks, etc.).
L'API de l'échange est divisée en différents types d'interfaces, généralement avecREST
Les utilisateurs peuvent utiliser des outils similaires pour créer des liens.WebSocket
L'interface protocolaire.FIX
Les interfaces protocolaires. Ce ne sont que des informations.REST
L'interface du protocole, dont la documentation est généralement disponible en bas du site Web de l'échange, peut être consultée en ligne.Appareils électroniquesLes liens littéraux peuvent être trouvés ; il est parfois nécessaire de consulter des informations d'erreur d'interface ou de consulter ces documents ; les systèmes d'API de chaque échange sont différents et différenciés, et il faut consulter la documentation pour chaque problème spécifique. Si vous n'êtes pas un développeur de stratégie, ces informations peuvent être utilisées uniquement comme informations.
API KEY pour le compte
L'API KEY de votre compte doit être bien comprise, car cela concerne la sécurité des actifs blockchain stockés sur votre échange.
Si vous dites que l'API est un canal, alors l'API KEY peut être interprété comme un canal.Permis de voyageL'API KEY est utilisée pour vérifier l'identité. L'API KEY concerne la sécurité de vos actifs et doit être correctement conservée.
Habituellement, l'API KEY de l'échange est créée dans le coin supérieur droit de la page de l'échange, sur la page de gestion de compte ((il peut également y avoir une échange ailleurs sur la page Web, cliquez pour trouver le lien avec le mot clé API pour trouver)).access key
La deuxième ligne est généralement appeléesecret key
; il y a aussi une clé d'API pour les échanges et d'autres informations, comme l'interface OKEX V5 et V3.PassPhrase
, qui est aussi une chaîne (qui doit être configurée par vous-même pour renforcer la sécurité de l'authentification).
L'API KEY est généralement configurée avec des autorisations spécifiques à l'utilisation de l'API KEY. En plus des autorisations, l'API KEY peut également configurer une liste blanche d'adresses IP. Si vous utilisez cette liste blanche d'adresses IP, vous serez refusé d'accès à l'interface si vous ne comprenez pas le concept d'adresse IP.
Objet de l'échange Le concept d'objet d'échange a été inventé par l'inventeur de la plate-forme de négociation quantitative.FMZ.COMLe concept de l'interface de l'échange est le concept de l'interface de l'échange. L'objet est appelé exchange dans le code de stratégie FMZ, appelant la fonction exchange.GetTicker, qui est en fait l'interface appelée pour accéder aux données de marché de l'échange. Pour plus de détails, voir la documentation de l'API FMZ:https://www.fmz.com/api#exchangeUn échange peut avoir des segments de futures, des segments de dépôts. Puisque les objets d'échange de futures et les objets d'échange de dépôts sont définis sur FMZ comme différents types d'objets d'échange, ils sont distincts (les objets d'échange de futures ont plusieurs fonctions de plus que les objets d'échange de dépôts, telles que la fonction de mise en place du levier, la fonction de demande de dépôt, etc., document de demande spécifique). Donc, pour l'exemple de l'échange de Binance, vous pouvez voir ceci lors de la configuration sur FMZ:Il y a aussi deux pièces de monnaie.
Si la stratégie consiste à manipuler des objets d'échanges à terme, elle ajoute des objets à terme; si elle consiste à manipuler des objets à terme, elle ajoute des objets à terme.
Sur la plateforme FMZ, l'exchange est un objet d'échange qui représente un compte d'échange.https://www.fmz.com/api#exchanges
Le terme "marché de négociation" désigne ici un panneau de négociation spécifique, généralement constitué de plusieurs blocs.Les échanges monétaires,Levier sur les pièces,Les contratsJe ne sais pas.
Les échanges Ce que nous appelons généralement le commerce de la soupe, en termes simples, est ce que nous achetons et vendons, par exemple, nous allons au marché pour acheter des légumineuses.Le chou blancIl s'agit d'une paire de transactions (dessous de la ligne) où l'acheteur paie pour le blanc, le vendeur paie pour le blanc.Le taux de change de la banque est le même que celui de la banque centrale.Dans cette transaction, l'opération d'achat consiste à payer USDT pour recevoir BTC. PourLe taux de change de la banque est le même que celui de la banque centrale.Par exemple, nous appelons généralement BTC une monnaie de transaction et USDT une monnaie de devises.
Produits au comptantLes échanges monétaires,Levier sur les piècesLes transactions en espèces ne sont pas considérées comme des transactions en espèces.Les échangesIl est possible de décrire le marché sur lequel vous négociez.
L'utilisation de la plate-forme de négociation quantitative FMZ comme exemple, si vous voulez faire une paire de transactions de BTC en USDT.
Nous avons utilisé des fonctions de la plateforme FMZ.exchange.SetCurrency("BTC_USDT")
Le taux de conversion de la paire de transactions actuelle est:BTC_USDT
Je suis désolé.
PourSetCurrency
Il y a aussi une autre version de ce qui se passe dans le pays.https://www.fmz.com/api#exchange.setcurrency..Je ne sais pas.
Pourexchange
Il y a aussi une autre version de ce qui se passe dans le pays.https://www.fmz.com/api#exchange
Les contrats (futures, options)
La différence majeure avec les transactions instantanées est la transaction par contrat.币本位合约
、USDT本位合约
Pour les transactions programmées, les transactions quantitatives, il ne s'agit pas seulement de déterminer la paire de transactions, mais aussi de déterminer le contrat. Par exemple, il y a beaucoup de contrats de BTC, il y a des contrats trimestriels (expiration chaque trimestre), des contrats hebdomadaires (expiration 5 par semaine), des contrats permanents (non-expiration), etc. Si vous utilisez un seul identifiant pour un contrat, vous avez besoin d'un code de contrat spécifique pour le décrire.
Nous avons donc besoin de décrire ce qu'est une monnaie (une paire de transactions) et ce qu'est un contrat (un code de contrat) pour décrire le marché sur lequel les contrats sont négociés.
Contrats sur le lieu de monnaie
Les contrats en bitcoins comme garantie (par exemple, les contrats en bitcoins en BTC comme garantie, les bénéfices en BTC) et les bénéfices en bitcoins. Les paires de devises des contrats en bitcoins sont généralement indiquées en USD.BTC的币本位季度合约
Le marché.
Il y a aussi une plateforme de trading quantitative FMZ.exchange.SetCurrency("BTC_USD")
Nous avons mis en place une paire de transactions, puisexchange.SetContractType("quarter")
Il s'agit d'un système de négociation qui consiste à mettre en place des contrats trimestriels.BTC的币本位季度合约
Je suis désolé.
Contrats locaux USDT
Les contrats avec USDT comme garantie (par exemple, les contrats USDT locaux de BTC, avec USDT comme garantie, les bénéfices sont également USDT), les bénéfices sont également USDT.BTC的USDT本位永续合约
Le marché.
Il y a aussi une plateforme de trading quantitative FMZ.exchange.SetCurrency("BTC_USDT")
Nous avons mis en place une paire de transactions, puisexchange.SetContractType("swap")
Il y a une différence de prix entre les deux types de transactions.BTC的USDT本位永续合约
Je suis désolé.
Les commandes Qu'est-ce que cette commande signifie? L'ordre est le lot que nous soumettons à l'échange lorsque nous achetons ou vendons sur l'échange. L'ordre est divisé en liste de marché, liste de prix, liste de conditions, etc. Les attributs les plus basiques d'une commande sont les suivants: l'objet de l'ordre (simplement ce que l'on achète ou vend), le nombre d'ordres (combien acheter ou vendre), le prix de l'ordre (à quel prix acheter ou vendre).
Produits au comptant Le prix de vente d'un ordre de marchandises est généralement une question d'achat, le prix de vente d'un ordre de marchandises n'est pas un nombre de pièces mais un montant. Puisque le prix du marché ne détermine pas le prix, il est seulement possible de déterminer le montant à acheter.
Le contrat Le nombre d'unités de contrat est plus spécial, généralement pour le nombre de contrats, l'interface de contrat de l'échange est essentiellement un nombre de contrats, pas un nombre de pièces d'un nombre d'unités d'interface. En règle générale, le nombre de pièces sous contrat est le même que le nombre de pièces sous les ordres de prix de marché ou de prix limité.
Qu'est-ce qu'une commande de preneur? L'ordre de prise est de fournir une commande de liquidité, en termes simples, c'est le prix d'achat est de 10, le prix de vente est de 11, je pose un ordre d'achat au prix de 9, ou un ordre de vente au prix de 12, je pose un ordre de profondeur sur le plateau, mon ordre est le maker.
Par exemple, une fonction de sous-commande enveloppée dans une plate-forme d'échange quantitative des inventeurs.exchange.Sell
、exchange.Buy
L'emballage est une liste de prix limitée ordinaire, l'interface de la liste de prix du marché. Lorsque l'ordre est passé, il est classé comme preneur ou fabricant, en fonction du prix de l'ordre et de l'enveloppe à l'époque, pour voir si notre commande offre de la liquidité ou la réduit.
Dans la plateforme de négociation quantitative de l'inventeur, le prix de transmission est de 1, c'est-à-dire une liste de prix, notez que le montant de la commande de la liste de prix du marché est le montant, alors la liste de prix est certainement une réduction de la liquidité, certainement une commande de preneur.
Mandats de négociation
Beaucoup d'échanges supportent également les ordres conditionnels.比如冰山委托
、止损单
, 止盈单
, post_only:只做maker单
,fok:全部成交或立即取消
,ioc:立即成交并取消剩余
Je ne sais pas.
Ces commandes peuvent être utilisées sur les plateformes de négociation quantitative des inventeurs.exchange.IO
La fonction accède directement à l'interface de commande de l'échange pour spécifier les paramètres à définir (en spécifiant le type d'ordre conditionnel) pour passer une commande.exchange.IO
Vous pouvez consulter la documentation de l'API FMZ pour l'utilisation des fonctions:https://www.fmz.com/api#exchange.io...
Une plateforme de trading quantitative peut être considérée comme un outil de trading quantitatif, peut être un système de logiciel en ligne, peut être un site Web, peut être un programme exécutable local, peut même être un projet open source sur Github.
Plateforme de négociation quantitative FMZ La plateforme de trading quantitatif des inventeurs est un système distribué en ligne, dont les tutoriels peuvent être consultés:https://www.fmz.com/bbs-topic/4145
Système de retouche pour les plateformes de trading quantifiées Qu'est-ce qu'un système de rétroaction? En termes simples, un système de rétroaction consiste à faire revenir les données historiques d'une variété de transaction, en y ajoutant une stratégie pour obtenir les performances des transactions lors de la simulation des données historiques. Ainsi, si un système de rétroaction n'est qu'un environnement de sable, il ne peut pas fonctionner comme un véritable marché.
Le système de mesure de la plate-forme de trading quantifiée:
Nom | Le type | Expliquer |
---|---|---|
Bitfinex | Objets des bourses | Prise en charge de paires de transactions limitées, par exemple: BTC_USD, ETH_USD, LTC_USD, etc. Notez que les paires de transactions sont cotées en dollars américains |
Le bien-être | Objets des bourses | Prise en charge de paires de transactions limitées telles que: BTC_USDT, ETH_USDT, ETH_BTC, LTC_BTC, etc. |
Je suis d'accord. | Objets des bourses | Prise en charge de paires de transactions limitées telles que: BTC_USDT, ETH_USDT, ETH_BTC, LTC_BTC, etc. |
Les pièces | Objets des bourses | Prise en charge de paires de transactions limitées telles que: BTC_USDT, ETH_USDT, ETH_BTC, LTC_BTC, etc. |
OKEX à terme | Objets des marchés à terme | Prise en charge de paires de transactions limitées, par exemple: BTC_USD, ETH_USD, etc. Les transactions sont effectuées en USD, avec un code de contrat spécifique (voir la fonction Exchange.SetContractType). |
HuobiDM | Objets des marchés à terme | HuobiDM est un marché à terme de jetons (contrats jetons), qui prend en charge des paires de transactions limitées telles que: BTC_USD, ETH_USD, etc. Les transactions sont effectuées en USD, avec un code de contrat spécifique (voir la fonction Exchange.SetContractType). |
BitMEX | Objets des marchés à terme | La paire de transactions est: XBT_USD, après avoir défini le code du contrat spécifique (voir la fonction exchange.SetContractType), le contrat est un contrat en devises. |
Futures sur le Binance | Objets des marchés à terme | Prise en charge de paires de transactions limitées, par exemple: BTC_USDT, ETH_USDT, etc. Les paires de transactions sont cotées en USDT, les contrats sont locaux en USDT après la définition d'un code de contrat spécifique (voir la fonction Exchange.SetContractType). |
Options dérivées | Objets des bourses d'options | Les paires de transactions sont: BTC_USD, ETH_USD, après avoir défini un code de contrat spécifique (voir la fonction exchange.SetContractType), le contrat est un contrat en devises. |
L'API KEY pour une plateforme de trading quantitative
Toutes les interfaces API sont utilisées, de même que les plates-formes de négociation quantitative.扩展API
Les fonctionnalités de la plateforme FMZ peuvent être programmées. Par exemple, créer des disques en série, démarrer des disques en série, modifier la configuration des disques en série, etc.https://www.fmz.com/api#fmz平台扩展apiL'API d'extension peut également être utilisée pour faire des choses intéressantes, par exemple:Extension de l'API pour effectuer des transactions de signaux d'alarme TradingView à l'aide de la plateforme de négociation quantitative de l'inventeur
Cela dit, qu'est-ce que cela implique de contrôler automatiquement mes comptes d'échange pour faire des transactions? Ce sont des scripts de négociation programmés qui peuvent être écrits dans une variété de langages, tels que la plate-forme de négociation quantitative FMZ, qui prend en charge l'écriture de stratégies de négociation en JavaScript, Python et C++. Ces scripts permettent d'acheter et de vendre sur un compte via l'interface API de l'échange.
Appareil sur lequel fonctionne le script de transaction programmatique
Le scénario de disque virtuel doit avoir un support matériel (en termes simples, il doit être là où le disque virtuel doit fonctionner) ; les transactions quantifiées de la sphère monétaire consistent généralement à déployer le disque virtuel sur le serveur Ali Cloud de Hong Kong (bien sûr, vous pouvez également utiliser un serveur d'un autre opérateur).timeout
Je ne sais pas.
Dans FMZ, il est généralement possible de déployer ses propres logiciels avec le serveur Ali Cloud de Hong Kong (le logiciel porteur du disque dur de la plate-forme de négociation quantitative de l'inventeur est appelé le disque dur du gestionnaire de liquidité, et le disque dur de négociation quantitative est basé sur le logiciel du gestionnaire).
Sélection de la langue du script Il y a trop de langages de programmation pour écrire des scripts sur disque dur. Ici, nous allons également voir les avantages des différents langages en utilisant la plate-forme d'échange quantitative FMZ.
JavaScript Simple et facile à utiliser, peu dépendant de l'environnement de l'appareil, supporte les normes ES6. La vitesse d'exécution du programme de stratégie est seulement la deuxième après celle de la stratégie C++.
Python Cela dépend en partie de l'environnement de l'appareil, il est possible d'installer diverses bibliothèques et est très évolutif.
C++
Les stratégies sont les plus rapides, les plus efficaces et les plus difficiles à utiliser.
Je joue, je ressens autre chose.so easy!
。
Langue Ma Le langage Maï soutenu par FMZ n'est qu'une instruction de base.
Visualiser les stratégies de splitting des modules Les stratégies visualisées sont utilisées uniquement pour améliorer l'intérêt et la compréhension de la logique du programme.
le fangliangCette série est une bonne introduction.
le lièvreJe n'ai pas eu à passer six mois à chercher moi-même des informations et à me renseigner moi-même.
- Je ne sais pas.C'est facile à comprendre! Merci pour l'enseignement!
le singwealMerci de le partager!
le singwealMerci de le partager!
- Je ne sais pas.J'attends avec impatience la suite de la série
L'inventeur de la quantification - un petit rêveMerci pour votre soutien.