Le 14 septembre 2023 à 22:59:38 :
Le 14 septembre 2023 à 21:12:53 :
python, vraiment pas top comme language pour faire un bot maintenable, efficient et rapidepour son bot, python ca va. la vitesse n'est pas vraiment importante
par contre si tu monte en niveau et en besoin de vitesse, faudra passer sur go ou rust
go et rust ne sont pas supportés par ccxt
Le 15 septembre 2023 à 07:07:23 :
Le 14 septembre 2023 à 21:12:53 :
python, vraiment pas top comme language pour faire un bot maintenable, efficient et rapide
vas y donne nous "mieux" et plus lisible
bah php. rien que sur ccxt tu vois que python prends 2x plus de LoC que php pour arriver au même résultat, preuve que c'est bien de la merde, et je parle pas des performances et des avantages de php (un bot qui vise une haute disponibilité doit tourner sur un serveur)
Intéressant
Le 15 septembre 2023 à 16:01:41 :
Le 15 septembre 2023 à 07:07:23 :
Le 14 septembre 2023 à 21:12:53 :
python, vraiment pas top comme language pour faire un bot maintenable, efficient et rapide
vas y donne nous "mieux" et plus lisible
bah php. rien que sur ccxt tu vois que python prends 2x plus de LoC que php pour arriver au même résultat, preuve que c'est bien de la merde, et je parle pas des performances et des avantages de php (un bot qui vise une haute disponibilité doit tourner sur un serveur)
qu'est-ce que t'entends par disponibilité ?
Son temps de fonctionnement ?
J'ai foutu le script qui tourne en tant que service sous linux et un autre service qui le redémarre au cas où il plante
(bot_trading.service)
(bot_trading.timer)
c'est justement ce que je test là, s'il tourne bien en fond donc je suis plus sur le pi, j'attends je regarderai ce soir.
il refill a -0.21% et revend a +0.51% mini dans la config que j'ai laissé avant de laisser tourner sans être dessus. Donc si ça fonctionne et qu'il se passe des choses ça devrait apparaître dans les logs ce soir.
Le 15 septembre 2023 à 16:12:46 :
Le 15 septembre 2023 à 16:01:41 :
Le 15 septembre 2023 à 07:07:23 :
Le 14 septembre 2023 à 21:12:53 :
python, vraiment pas top comme language pour faire un bot maintenable, efficient et rapide
vas y donne nous "mieux" et plus lisible
bah php. rien que sur ccxt tu vois que python prends 2x plus de LoC que php pour arriver au même résultat, preuve que c'est bien de la merde, et je parle pas des performances et des avantages de php (un bot qui vise une haute disponibilité doit tourner sur un serveur)
qu'est-ce que t'entends par disponibilité ?
Son temps de fonctionnement ?J'ai foutu le script qui tourne en tant que service sous linux et un autre service qui le redémarre au cas où il plante
(bot_trading.service)
(bot_service.timer)
c'est justement ce que je test là, s'il tourne bien en fond donc je suis plus sur le pi, j'attends je regarderai ce soir.il refill a -0.21% et revend a +0.51% mini dans la config que j'ai laissé avant de laisser tourner sans être dessus. Donc si ça fonctionne et qu'il se passe des choses ça devrait apparaître dans les logs ce soir.
si tu restes sur un petit bot ça va, mais si tu fais comme moi et tu décides de faire un gros bot qui gère tout, arbitrage, gestion de portefeuille, analyse de toute les paires, base de donnée, suivi performances, logs, etc, tu vas être emmerdé et tu te diras que t'as mal choisi ta techno (de la même façon que moi qui avait commencé à simuler les stratégie sur excel, au final ça a fait un document de 150mo et j'ai du acheter un autre pc car ça prenait 100% du cpu et c'était mieux que de tout refaire ailleurs)
si un bot marche c'est logique d'imaginer l'améliorer à sa sauce, ajouter une gestion des fonds, moi je sais que je peux pas me permettre que le bot plante en cas de coupure de courant, coupure de merde de la box, ou autre, en plein milieu d'un trade, si tu as beaucoup d'argent un jour et que tu trade un % grandissant ça peut couter cher un bot coupé au mauvais moment.
Le 15 septembre 2023 à 16:28:08 :
Le 15 septembre 2023 à 16:12:46 :
Le 15 septembre 2023 à 16:01:41 :
Le 15 septembre 2023 à 07:07:23 :
Le 14 septembre 2023 à 21:12:53 :
python, vraiment pas top comme language pour faire un bot maintenable, efficient et rapide
vas y donne nous "mieux" et plus lisible
bah php. rien que sur ccxt tu vois que python prends 2x plus de LoC que php pour arriver au même résultat, preuve que c'est bien de la merde, et je parle pas des performances et des avantages de php (un bot qui vise une haute disponibilité doit tourner sur un serveur)
qu'est-ce que t'entends par disponibilité ?
Son temps de fonctionnement ?J'ai foutu le script qui tourne en tant que service sous linux et un autre service qui le redémarre au cas où il plante
(bot_trading.service)
(bot_service.timer)
c'est justement ce que je test là, s'il tourne bien en fond donc je suis plus sur le pi, j'attends je regarderai ce soir.il refill a -0.21% et revend a +0.51% mini dans la config que j'ai laissé avant de laisser tourner sans être dessus. Donc si ça fonctionne et qu'il se passe des choses ça devrait apparaître dans les logs ce soir.
si tu restes sur un petit bot ça va, mais si tu fais comme moi et tu décides de faire un gros bot qui gère tout, arbitrage, gestion de portefeuille, analyse de toute les paires, base de donnée, suivi performances, logs, etc, tu vas être emmerdé et tu te diras que t'as mal choisi ta techno (de la même façon que moi qui avait commencé à simuler les stratégie sur excel, au final ça a fait un document de 150mo et j'ai du acheter un autre pc car ça prenait 100% du cpu et c'était mieux que de tout refaire ailleurs)
si un bot marche c'est logique d'imaginer l'améliorer à sa sauce, ajouter une gestion des fonds, moi je sais que je peux pas me permettre que le bot plante en cas de coupure de courant, coupure de merde de la box, ou autre, en plein milieu d'un trade, si tu as beaucoup d'argent un jour et que tu trade un % grandissant ça peut couter cher un bot coupé au mauvais moment.
J'aurai probablement pas les compétences pour pousser le truc super loin vu que je reste limité dans le dev.
Donc il a vocation a rester un petit bot, a voir s'il se montrera utile dans les périodes de range, ce pour quoi il est à la base pensé.
C'est en voyant ça que je me suis dit y'a p'tet quelque chose à faire:

la timeline c'est 1j
Si le cours fluctue, il devient inutile.
Faudra eventuellement que j'adapte un truc genre qu'il aille prendre une base quelque part vers le 24h high/low histoire de savoir vers ou commencer pour prendre des trades a l'avenir
Si le cours fluctue, il devient inutile.
ça me fait penser au bot de quelqu'un qui tradait les stablecoins quand ils passaient en dessous et au dessus de 1, fais quand même gaffe car tu sais que bitcoin peut décider de brusquement pumper ou dumper comme ça, tes ordres sont publics et tu peux te faire couillonner, à mon avis tu devrais appliquer une sorte de stratégie pour jamais miser 100% de tes fonds si tu commences à gagner de l'argent
Le 15 septembre 2023 à 16:39:32 :
Si le cours fluctue, il devient inutile.
ça me fait penser au bot de quelqu'un qui tradait les stablecoins quand ils passaient en dessous et au dessus de 1, fais quand même gaffe car tu sais que bitcoin peut décider de brusquement pumper ou dumper comme ça, tes ordres sont publics et tu peux te faire couillonner, à mon avis tu devrais appliquer une sorte de stratégie pour jamais miser 100% de tes fonds si tu commences à gagner de l'argent
j'y ai pensé au coup des stables coin, mais ça arrive plutot rarement et c'est jamais un gros montant, donc ça m'a pas l'air si interessant.
T'as surement plus d'oportunités de +/-0.50% sur BTC qu'ailleurs. ETH eventuellement aussi.
Là tel que configuré le bot ne vendra jamais a perte, et vu que ça trade sur BTCUSD, le pire scenario ça seraitqu'il achete et que le marché prenne un gange obligeant d'attendre X jours/mois/années avant que ça remonte (mais ça remonterai bien a un moment ou a un autre) et normalement tous les ordres sont censés se passer au prix du marché donc instantanés quand il en passe (j'ai pas encore pu tester ça, vu que j'ai pas encore mis un seul peco sur binance pour tester)
Le 15 septembre 2023 à 16:43:16 :
Le 15 septembre 2023 à 16:39:32 :
Si le cours fluctue, il devient inutile.
ça me fait penser au bot de quelqu'un qui tradait les stablecoins quand ils passaient en dessous et au dessus de 1, fais quand même gaffe car tu sais que bitcoin peut décider de brusquement pumper ou dumper comme ça, tes ordres sont publics et tu peux te faire couillonner, à mon avis tu devrais appliquer une sorte de stratégie pour jamais miser 100% de tes fonds si tu commences à gagner de l'argent
j'y ai pensé au coup des stables coin, mais ça arrive plutot rarement et c'est jamais un gros montant, donc ça m'a pas l'air si interessant.
T'as surement plus d'oportunités de +/-0.50% sur BTC qu'ailleurs. ETH eventuellement aussi.
Là tel que configuré le bot ne vendra jamais a perte, et vu que ça trade sur BTCUSD, le pire scenario ça seraitqu'il achete et que le marché prenne un gange obligeant d'attendre X jours/mois/années avant que ça remonte (mais ça remonterai bien a un moment ou a un autre) et normalement tous les ordres sont censés se passer au prix du marché donc instantanés quand il en passe (j'ai pas encore pu tester ça, vu que j'ai pas encore mis un seul peco sur binance pour tester)
les ordres de marchés peuvent être risqués à cause du slippage, perso j'utilise que des ordres limits, comme ça tu controles parfaitement et pas de mauvaise surprise
et dans le code c'est facile d'émuler un ordre market si tu veux tout vendre coute que coute, t'as juste à mettre une limite élevée et ça vendra comme si c'était un ordre market en suivant l'order book
Le 15 septembre 2023 à 16:54:23 :
Le 15 septembre 2023 à 16:43:16 :
Le 15 septembre 2023 à 16:39:32 :
Si le cours fluctue, il devient inutile.
ça me fait penser au bot de quelqu'un qui tradait les stablecoins quand ils passaient en dessous et au dessus de 1, fais quand même gaffe car tu sais que bitcoin peut décider de brusquement pumper ou dumper comme ça, tes ordres sont publics et tu peux te faire couillonner, à mon avis tu devrais appliquer une sorte de stratégie pour jamais miser 100% de tes fonds si tu commences à gagner de l'argent
j'y ai pensé au coup des stables coin, mais ça arrive plutot rarement et c'est jamais un gros montant, donc ça m'a pas l'air si interessant.
T'as surement plus d'oportunités de +/-0.50% sur BTC qu'ailleurs. ETH eventuellement aussi.
Là tel que configuré le bot ne vendra jamais a perte, et vu que ça trade sur BTCUSD, le pire scenario ça seraitqu'il achete et que le marché prenne un gange obligeant d'attendre X jours/mois/années avant que ça remonte (mais ça remonterai bien a un moment ou a un autre) et normalement tous les ordres sont censés se passer au prix du marché donc instantanés quand il en passe (j'ai pas encore pu tester ça, vu que j'ai pas encore mis un seul peco sur binance pour tester)
les ordres de marchés peuvent être risqués à cause du slippage, perso j'utilise que des ordres limits, comme ça tu controles parfaitement et pas de mauvaise surprise
et dans le code c'est facile d'émuler un ordre market si tu veux tout vendre coute que coute, t'as juste à mettre une limite élevée et ça vendra comme si c'était un ordre market en suivant l'order book
visiblement là c'est ça qui passe un ordre market:order = exchange.create_market_buy_order(symbol, usdt_balance)
(le usdt_balance = tout le wallet y passe) mais si je veux ne pas tout mettre j'ai juste a adjuster une variable pour remplacer usdt_balancemontant = usdt_balance - montant que je veux garder
et voila je garde une partie peux meme utiliser de %
j'ai demandé a GPT pour un limit et il m'a sorti:order = exchange.create_limit_buy_order(
symbol,
quantity,
price,
)
ça a vraiment pas l'air sorcier si jamais j'en ai besoin
(je me doutais deja avant de demander a GPT que j'aurai juste a changer market en limit quand j'ai vu le code)
y'a juste un truc qui me chiffonais c'était que order, c'est une variable donc j'ai demandé à mon meilleur ami et voici sa réponse :
Pour exécuter un ordre dans ccxt, vous n'avez pas besoin d'appeler une fonction spécifique pour "exécuter" l'ordre. Les ordres que vous créez avec create_limit_buy_order, create_limit_sell_order, create_market_buy_order, ou create_market_sell_order sont automatiquement soumis au marché après leur création.
du coup je comprends mieux
Ici tu peux télécharger les données historiques hourly du bitcoin https://www.cryptodatadownload.com/data/bitstamp/
Ça te permettra de tester ta stratégie et de peaufiner la valeur de tes variables.
Le 15 septembre 2023 à 16:28:08 :
Le 15 septembre 2023 à 16:12:46 :
Le 15 septembre 2023 à 16:01:41 :
Le 15 septembre 2023 à 07:07:23 :
Le 14 septembre 2023 à 21:12:53 :
python, vraiment pas top comme language pour faire un bot maintenable, efficient et rapide
vas y donne nous "mieux" et plus lisible
bah php. rien que sur ccxt tu vois que python prends 2x plus de LoC que php pour arriver au même résultat, preuve que c'est bien de la merde, et je parle pas des performances et des avantages de php (un bot qui vise une haute disponibilité doit tourner sur un serveur)
qu'est-ce que t'entends par disponibilité ?
Son temps de fonctionnement ?J'ai foutu le script qui tourne en tant que service sous linux et un autre service qui le redémarre au cas où il plante
(bot_trading.service)
(bot_service.timer)
c'est justement ce que je test là, s'il tourne bien en fond donc je suis plus sur le pi, j'attends je regarderai ce soir.il refill a -0.21% et revend a +0.51% mini dans la config que j'ai laissé avant de laisser tourner sans être dessus. Donc si ça fonctionne et qu'il se passe des choses ça devrait apparaître dans les logs ce soir.
si tu restes sur un petit bot ça va, mais si tu fais comme moi et tu décides de faire un gros bot qui gère tout, arbitrage, gestion de portefeuille, analyse de toute les paires, base de donnée, suivi performances, logs, etc, tu vas être emmerdé et tu te diras que t'as mal choisi ta techno (de la même façon que moi qui avait commencé à simuler les stratégie sur excel, au final ça a fait un document de 150mo et j'ai du acheter un autre pc car ça prenait 100% du cpu et c'était mieux que de tout refaire ailleurs)
si un bot marche c'est logique d'imaginer l'améliorer à sa sauce, ajouter une gestion des fonds, moi je sais que je peux pas me permettre que le bot plante en cas de coupure de courant, coupure de merde de la box, ou autre, en plein milieu d'un trade, si tu as beaucoup d'argent un jour et que tu trade un % grandissant ça peut couter cher un bot coupé au mauvais moment.
Pour rester sur python Il y a le multithreading qui peut marcher
De plus peu de latence sur ccxt quand la session reste ouverte
Le 15 septembre 2023 à 22:47:40 :
Ici tu peux télécharger les données historiques hourly du bitcoin https://www.cryptodatadownload.com/data/bitstamp/Ça te permettra de tester ta stratégie et de peaufiner la valeur de tes variables.
Le 15 septembre 2023 à 22:47:40 :
Ici tu peux télécharger les données historiques hourly du bitcoin https://www.cryptodatadownload.com/data/bitstamp/Ça te permettra de tester ta stratégie et de peaufiner la valeur de tes variables.
ty interessant ça 
ACHAT: @26470.0 - 0.0 BTC pour 0.0 USDT. - 16/09/2023 08:50:02
VENTE: @26528.05 - 0.0 BTC pour 0.0 USDT. - 16/09/2023 00:35:15
ACHAT: @26392.33 - 0.0 BTC pour 0.0 USDT. - 15/09/2023 15:57:58VENTE: @26449.59 - 0.0 BTC pour 0.0 USDT. - 15/09/2023 15:33:43
ACHAT: @25407.85 - 0.0 BTC pour 0.0 USDT. - 15/09/2023 15:12:31
Je viens au rapport, depuis hier que je laisse tourner en fond voir si ça fonctionne, j'avais que 2 entrées dans les logs (ceux que j'ai barré).
Ca fonctionne donc bien.
ta mis a combien de %
Le 16 septembre 2023 à 09:44:05 :
ta mis a combien de %
refill a mini -0.21% par rapport au taux de la dernière transaction et vente a mini +0.51% du taux de la dernière transaction (donc au taux d'achat du -0.21%) quand j'ai laissé en fond hier (les 3 transactions donc)
Pour ceux qui comprennent pas le code, en gros c'est si on est a +0.51 et que la dernière transaction est de type "ACHAT" => on declenche la vente
et inversement, si on est a -0.21 et que la dernière transaction est de type "VENTE", on rachète.
ACHAT et VENTE que je recupère depuis la dernière (première) ligne des logs.
Le 16 septembre 2023 à 09:45:06 :
Le 16 septembre 2023 à 09:44:05 :
ta mis a combien de %refill a -0.21% et vente a +0.51% quand j'ai laissé en fond hier (les 3 transactions donc)
Pour ceux qui comprennent pas le code, en gros c'est si on est a +0.51 et que la dernière transaction est de type "ACHAT" => on declenche la vente
et inversement, si on est a -0.21 et que la dernière transaction est de type "VENTE", on rachète.
ACHAT et VENTE que je recupère depuis la dernière (première) ligne des logs.
refresh tout les combien ?
tu le fait avec un btc entier ?
Le 16 septembre 2023 à 09:52:25 :
Le 16 septembre 2023 à 09:45:06 :
Le 16 septembre 2023 à 09:44:05 :
ta mis a combien de %refill a -0.21% et vente a +0.51% quand j'ai laissé en fond hier (les 3 transactions donc)
Pour ceux qui comprennent pas le code, en gros c'est si on est a +0.51 et que la dernière transaction est de type "ACHAT" => on declenche la vente
et inversement, si on est a -0.21 et que la dernière transaction est de type "VENTE", on rachète.
ACHAT et VENTE que je recupère depuis la dernière (première) ligne des logs.
refresh tout les combien ?
tu le fait avec un btc entier ?
pour le moment y'a 0 la je faisais des tests mais y'a rien sur mon compte binance d'ou les valeurs 0.0 sur les logs.
Et refresh toutes les 3 secondes
ok ty pour ton partage n’hésite pas a nous faire des maj c'est intéressant