Optimisation d'un bot de trading (conseils)

Jessy_lg27 Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -  
[Dal] Messages postés 6205 Date d'inscription   Statut Contributeur Dernière intervention   -
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 6205 Date d'inscription   Statut Contributeur Dernière intervention   1 105
 
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