Specification

import ccxt
import pandas as pd
import numpy as np
import talib
import time

# Configuration
exchange = ccxt.binance({
    'apiKey': 'VOTRE_API_KEY',
    'secret': 'VOTRE_SECRET_KEY',
})

# Paramètres de trading
symbole = 'BTC/USDT'
timeframe = '1h'
montant = 100  # en USDT
stop_loss = 0.98  # 2% de perte maximale
take_profit = 1.03  # 3% de gain

def recuperer_donnees():
    ohlcv = exchange.fetch_ohlcv(symbole, timeframe, limit=100)
    df = pd.DataFrame(ohlcv, columns=['timestamp', 'open', 'high', 'low', 'close', 'volume'])
    df['timestamp'] = pd.to_datetime(df['timestamp'], unit='ms')
    return df

def calculer_indicateurs(df):
    df['ema_50'] = talib.EMA(df['close'].values, timeperiod=50)
    df['ema_200'] = talib.EMA(df['close'].values, timeperiod=200)
    df['rsi'] = talib.RSI(df['close'].values, timeperiod=14)
    return df

def strategie(df):
    if df['ema_50'].iloc[-1] > df['ema_200'].iloc[-1] and df['rsi'].iloc[-1] < 70:
        return 'acheter'
    elif df['ema_50'].iloc[-1] < df['ema_200'].iloc[-1] and df['rsi'].iloc[-1] > 30:
        return 'vendre'
    else:
        return 'neutre'

def trader():
    df = recuperer_donnees()
    df = calculer_indicateurs(df)
    signal = strategie(df)

    if signal == 'acheter':
        try:
            ordre = exchange.create_market_buy_order(symbole, montant)
            print(f"Achetés {montant} {symbole}")
        except Exception as e:
            print(f"Erreur d'achat : {e}")
    elif signal == 'vendre':
        try:
            ordre = exchange.create_market_sell_order(symbole, montant)
            print(f"Vendus {montant} {symbole}")
        except Exception as e:
            print(f"Erreur de vente : {e}")

while True:
    trader()
    time.sleep(3600)  # attendre 1 heure

Responded

1
Developer 1
Rating
(5)
Projects
7
0%
Arbitration
8
13% / 75%
Overdue
3
43%
Free
Similar orders
//+------------------------------------------------------------------+ //| M65 PRO ROBOT | //| Trend + RSI + Risk Management | //+------------------------------------------------------------------+ #property strict input double LotSize = 0.01; input int StopLoss = 100; // points input int TakeProfit = 200; // points input int RSI_Period = 14; int rsiHandle; int ema50Handle; int ema200Handle;
Trader 30+ USD
Un robot qui tarde a ma place même quand je Dors je veux qu'elle faire tout les tâches a ma place même quand le téléphone est éteint ou allumé le robot doit analyse et trade pour moi
Akaba Marc 100+ USD
Les conditions son clair les candidats pourront apprendre beaucoup sur les services du marketing dans le domaine du monde opératoire de l'utilisation du robot virtuel de nombreuses manières d'investissement et pourra pur jouer plusieurs rôles sur plusieurs plans

Project information

Budget
30 - 200 USD

Customer

Placed orders1
Arbitrage count0