Tarea técnica

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

Han respondido

1
Desarrollador 1
Evaluación
(5)
Proyectos
7
0%
Arbitraje
8
13% / 75%
Caducado
3
43%
Libre
2
Desarrollador 2
Evaluación
(28)
Proyectos
39
23%
Arbitraje
14
0% / 93%
Caducado
4
10%
Libre
3
Desarrollador 3
Evaluación
(298)
Proyectos
477
40%
Arbitraje
105
40% / 24%
Caducado
81
17%
Trabajando
Ha publicado: 2 ejemplos
4
Desarrollador 4
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
5
Desarrollador 5
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
Ha publicado: 8 ejemplos
6
Desarrollador 6
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
Solicitudes similares
Mamadou Cissé 50+ USD
Spécifiez vos exigences de spécification ici point par point. Essayez de décrire vos besoins de manière brève et claire, afin que votre développeur potentiel soit en mesure d'évaluer correctement sa complexité et son coût, ainsi que le temps d'exécution requis. Une mauvaise description ou une description trop générique aura pour conséquence un manque d’intérêt pour votre commande, ou que vous passerez beaucoup de

Información sobre el proyecto

Presupuesto
30 - 200 USD