Optimisation d'un bot de trading (conseils)

Fermé
Jessy_lg27 Messages postés 12 Date d'inscription jeudi 5 août 2021 Statut Membre Dernière intervention 13 novembre 2022 - Modifié le 27 juin 2022 à 18:26
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 - 27 juin 2022 à 19:27
Bonjour,

J’aimerais optimiser mon bot de trading pour :

Qu’il soit plus rentable,

Et que le code soit optimisé.

Je vous contact pour vous demander si vous avait des conseils à me donner

merci


import cbpro
import time

data = open('passphrase', 'r').read().splitlines()

public = data[0]
passphrase = data[1]
secret = data[2]

auth_client = cbpro.AuthenticatedClient(public, secret, passphrase)



while True:
sell_price = float(auth_client.get_product_24hr_stats(product_id="BTC-EUR")['low'])
sell_amount = 0.00005

buy_price = float(open("buy", "r").read())
buy_amount = 0.00005

price = float(auth_client.get_product_ticker(product_id="BTC-EUR")['price'])

if price <= sell_price + 2:
auth_client.buy(size=buy_amount, order_type="market", product_id="BTC-EUR")
print(f"buy {price}")
open("buy", "w").write(str(price))

elif price >= buy_price + 100:
auth_client.sell(size=sell_amount, order_type="market", product_id="BTC-EUR")
print("sell", price)

else:
print(f"nothing... price : {price}€, buying : {buy_price}€, next sell : {price}€ >= {buy_price + 100}€, next buying : {price}€ <= {sell_price + 10}€,")

time.sleep(2)
A voir également:

1 réponse

[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
Modifié le 27 juin 2022 à 19:29
Salut Jessy_lg27,

Tout d'abord, si tu cherches à programmer un robot de trading profitable, la première chose à faire est de trouver par toi même une stratégie de trading profitable qui te convienne. Pour cela, tu dois probablement (si ce n'est pas fait) te former au domaine du trading, de la finance, de la gestion du risque, de l'analyse technique, voire à l'analyse fondamentale. Ce genre d'activités demande des compétences et ne s'improvise pas. C'est, en fait, l'une des activités les plus difficiles au monde.

Sur la méthode de mise au point, tu devrais tester ton robot en démo, avant de mettre des vrais sous à la merci de la logique et stratégie que tu as programmée, et faire :
  • du back-testing (avec des données historiques)
  • et du forward-testing (en surveillant ce que fait ton robot en temps réel, toujours en démo)


pour valider / ajuster son fonctionnement.

Ce processus peut te permettre, à fois, de vérifier et valider la stratégie et de construire un robot.

Je me limiterai à quelques observations générales sur ton code, parce que je pense que tout le travail en amont n'a probablement pas été fait...

Tu as définit des critères d'entrée, mais pas des critères de sortie (prises de profits / limitations des pertes)... Tu coupes tes positions manuellement ?

Du point de vue de la programmation tu devrais implémenter le robot de façon suffisamment générique pour que les critères d'entrée et de sortie soient interchangeables, et que tu aies juste à modifier la partie concernée à mesure que tu testeras différentes stratégies.

Dal
1