# Strategy Parameters SYMBOL = "RELIANCE" # Replace with your stock symbol INTERVAL = "1min" # Scalping requires a short timeframe STOPLOSS_PERCENT = 0.2 # Stop loss percentage (0.2% per trade) TARGET_RR_RATIO = 2 # Risk-Reward Ratio (1:2) QUANTITY = 10 # Number of shares per trade
def get_historical_data(symbol, interval="1min", limit=50): """Fetch historical data from Dhan API.""" response = dhan.get_historical_data(symbol=symbol, interval=interval, limit=limit)
while True: try: # Fetch and process data df = get_historical_data(SYMBOL, INTERVAL) df = add_indicators(df) signal = check_signals(df)
# Execute trade if signal == "BUY" and position is None: entry_price = place_order(SYMBOL, "BUY", QUANTITY) stoploss = entry_price * (1 - STOPLOSS_PERCENT / 100) target = entry_price + (entry_price - stoploss) * TARGET_RR_RATIO position = "LONG" print(f"BUY @ {entry_price}, SL: {stoploss}, Target: {target}")
elif signal == "SELL" and position is None: entry_price = place_order(SYMBOL, "SELL", QUANTITY) stoploss = entry_price * (1 + STOPLOSS_PERCENT / 100) target = entry_price - (stoploss - entry_price) * TARGET_RR_RATIO position = "SHORT" print(f"SELL @ {entry_price}, SL: {stoploss}, Target: {target}")
# Exit logic if position: current_price = df["close"].iloc[-1] if (position == "LONG" and (current_price <= stoploss or current_price >= target)) or \ (position == "SHORT" and (current_price >= stoploss or current_price <= target)): print(f"Exiting {position} @ {current_price}") position = None
time.sleep(60) # Wait for the next candle
except Exception as e: print(f"Error: {e}") time.sleep(60)
# Run the strategy try: scalping_strategy() except KeyboardInterrupt: print("Trading stopped manually.")
W prawdziwym duchu TradingView autor tego skryptu opublikował go jako open source, aby inwestorzy mogli go zrozumieć i zweryfikować. Pozdrowienia dla autora! Możesz go używać bezpłatnie, ale ponowne użycie tego kodu w publikacji podlega Zasadom Regulaminu. Możesz go oznaczyć jako ulubione, aby użyć go na wykresie.
Informacje i publikacje przygotowane przez TradingView lub jego użytkowników, prezentowane na tej stronie, nie stanowią rekomendacji ani porad handlowych, inwestycyjnych i finansowych i nie powinny być w ten sposób traktowane ani wykorzystywane. Więcej informacji na ten temat znajdziesz w naszym Regulaminie.