Bot sencillo para trading -- 2
Budget: $2 – $8 USD
Se quiere algo sencillo y funcional el presupuesto es 35 dólares
Descripción:
Bot trading scalping para xtb y operar en pares de divisas, nascad, petróleo o sp500 que solo haga ventas en un rango de pipas o sin rango de pips, con apalancamiento de x30 se aceptará opinión de freelance para que el bot sea rentable
Hola buenas tardes. El bot tiene que tener todos estos factores para el escalping, Rsi macd bandas bollinger y retroceso de fibonacci, el broker es xtb España si necesitas algo más dímelo
Hace 2 horas
Si ves que te se ocurre algo para mejorarlo dímelo estoy abierto a sugerencias
Hace 2 horas
También me gustaría que añadieras la opción de prueba y real
Hace 2 horas
Monto de 100 usd apalancamiento x20
solo que funcione para ventas, cuando haya compras se pause
Básicamente que sea autónomo, y se detenga cuando haya compras es decir funciona solo cuando hay ventas en el mercado
Adjunto un código parecido de ejemplo
import asyncio
import numpy as np
import talib
import alpaca_trade_api as tradeapi
# Configuración de la API de Alpaca
api = tradeapi.REST('<API_KEY_ID>', '<SECRET_API_KEY>', api_version='v2')
# Configuración de las condiciones de entrada
ENTRY_SIGNAL_THRESHOLD = 0.01
STOP_LOSS_THRESHOLD = -0.015
# Variables de seguimiento de la posición y estado del bot
in_trade = False
position_direction = None
async def calculate_indicators(symbol, timeframe, period):
# Obtiene los precios históricos del símbolo y timeframe especificados
bars = api.get_bars(symbol, timeframe, limit=period+1).df
# Calcula los indicadores técnicos MACD, RSI y Bandas de Bollinger
macd, signal, _ = talib.MACD(bars['close'].values, fastperiod=12, slowperiod=26, signalperiod=9)
rsi = talib.RSI(bars['close'].values, timeperiod=14)
upper_band, middle_band, lower_band = talib.BBANDS(bars['close'].values, timeperiod=20, nbdevup=2, nbdevdn=2, matype=0)
# Retorna los valores de los indicadores técnicos
return macd[-1], signal[-1], rsi[-1], middle_band[-1], (upper_band[-1] - lower_band[-1]) / middle_band[-1]
async def execute_trade(symbol, position_direction):
global in_trade
# Obtiene la última señal de entrada y las últimas lecturas de los indicadores
macd, signal, rsi, middle_band, bb_width = await calculate_indicators(symbol, '1Min', 20)
# Verifica si la señal de entrada es lo suficientemente fuerte
if macd > signal and rsi > 50 and bb_width < 0.05:
# Calcula la cantidad de acciones que se pueden comprar con el saldo actual
account = api.get_account()
buying_power = float(account.buying_power)
current_price = api.get_last_trade(symbol).price
qty = int(buying_power / current_price)
# Ejecuta una orden de compra con un stop loss del 1.5%
api.submit_order(symbol=symbol, qty=qty, side=position_direction, type='market', time_in_force='gtc', order_class='bracket', stop_loss={'stop_price': current_price * (1 + STOP_LOSS_THRESHOLD), 'limit_price': current_price * (1 + STOP_LOSS_THRESHOLD)}, take_profit={'limit_price': current_price * (1 + ENTRY_SIGNAL_THRESHOLD)}, )
print(f"Buying {qty} shares of {symbol} at {current_price} with a stop loss of {current_price * (1 + STOP_LOSS_THRESHOLD)} and take profit of {current_price * (1 + ENTRY_SIGNAL_THRESHOLD)}")
in_trade = True
async def main():
global in_trade, position_direction
# Bucle infinito del bot
while True:
if not in_trade:
# Verifica si hay una señal de entrada de compra
macd, signal, rsi, _, _ = await calculate
Descripción:
Bot trading scalping para xtb y operar en pares de divisas, nascad, petróleo o sp500 que solo haga ventas en un rango de pipas o sin rango de pips, con apalancamiento de x30 se aceptará opinión de freelance para que el bot sea rentable
Hola buenas tardes. El bot tiene que tener todos estos factores para el escalping, Rsi macd bandas bollinger y retroceso de fibonacci, el broker es xtb España si necesitas algo más dímelo
Hace 2 horas
Si ves que te se ocurre algo para mejorarlo dímelo estoy abierto a sugerencias
Hace 2 horas
También me gustaría que añadieras la opción de prueba y real
Hace 2 horas
Monto de 100 usd apalancamiento x20
solo que funcione para ventas, cuando haya compras se pause
Básicamente que sea autónomo, y se detenga cuando haya compras es decir funciona solo cuando hay ventas en el mercado
Adjunto un código parecido de ejemplo
import asyncio
import numpy as np
import talib
import alpaca_trade_api as tradeapi
# Configuración de la API de Alpaca
api = tradeapi.REST('<API_KEY_ID>', '<SECRET_API_KEY>', api_version='v2')
# Configuración de las condiciones de entrada
ENTRY_SIGNAL_THRESHOLD = 0.01
STOP_LOSS_THRESHOLD = -0.015
# Variables de seguimiento de la posición y estado del bot
in_trade = False
position_direction = None
async def calculate_indicators(symbol, timeframe, period):
# Obtiene los precios históricos del símbolo y timeframe especificados
bars = api.get_bars(symbol, timeframe, limit=period+1).df
# Calcula los indicadores técnicos MACD, RSI y Bandas de Bollinger
macd, signal, _ = talib.MACD(bars['close'].values, fastperiod=12, slowperiod=26, signalperiod=9)
rsi = talib.RSI(bars['close'].values, timeperiod=14)
upper_band, middle_band, lower_band = talib.BBANDS(bars['close'].values, timeperiod=20, nbdevup=2, nbdevdn=2, matype=0)
# Retorna los valores de los indicadores técnicos
return macd[-1], signal[-1], rsi[-1], middle_band[-1], (upper_band[-1] - lower_band[-1]) / middle_band[-1]
async def execute_trade(symbol, position_direction):
global in_trade
# Obtiene la última señal de entrada y las últimas lecturas de los indicadores
macd, signal, rsi, middle_band, bb_width = await calculate_indicators(symbol, '1Min', 20)
# Verifica si la señal de entrada es lo suficientemente fuerte
if macd > signal and rsi > 50 and bb_width < 0.05:
# Calcula la cantidad de acciones que se pueden comprar con el saldo actual
account = api.get_account()
buying_power = float(account.buying_power)
current_price = api.get_last_trade(symbol).price
qty = int(buying_power / current_price)
# Ejecuta una orden de compra con un stop loss del 1.5%
api.submit_order(symbol=symbol, qty=qty, side=position_direction, type='market', time_in_force='gtc', order_class='bracket', stop_loss={'stop_price': current_price * (1 + STOP_LOSS_THRESHOLD), 'limit_price': current_price * (1 + STOP_LOSS_THRESHOLD)}, take_profit={'limit_price': current_price * (1 + ENTRY_SIGNAL_THRESHOLD)}, )
print(f"Buying {qty} shares of {symbol} at {current_price} with a stop loss of {current_price * (1 + STOP_LOSS_THRESHOLD)} and take profit of {current_price * (1 + ENTRY_SIGNAL_THRESHOLD)}")
in_trade = True
async def main():
global in_trade, position_direction
# Bucle infinito del bot
while True:
if not in_trade:
# Verifica si hay una señal de entrada de compra
macd, signal, rsi, _, _ = await calculate