PeakeCoin - uni_bot.py

@peakecoin · 2025-07-23 03:15 · Synergy Builders
![](https://images.ecency.com/DQmZLmQwAdinjKbypC9ERUE3ofihqGYRY4ZA1wPL3xPj8h8/image.png)

What we're using to make the plug and play trading bots for all platforms.

uni_blank.py


from profit_strategies import get_profit_percent
import time
from fetch_market import get_orderbook_top
from place_order import place_order, get_open_orders, get_balance

# Hive account details (fill in before use)
HIVE_ACCOUNT = "<YOUR_USERNAME>"  # <-- Fill in your Hive username
HIVE_ACTIVE_KEY = "<YOUR_ACTIVE_KEY>"  # <-- Fill in your Hive active key
HIVE_NODES = ["https://api.hive.blog", "https://anyx.io"]
TOKEN = "SWAP.TOKEN"  # <-- Fill in your token symbol, e.g., SWAP.BTC
DELAY = 1500

def get_resource_credits(account_name):
    try:
        import requests
        url = "https://api.hive.blog"
        payload = {
            "jsonrpc": "2.0",
            "method": "rc_api.find_rc_accounts",
            "params": {"accounts": [account_name]},
            "id": 1
        }
        resp = requests.post(url, json=payload, timeout=10)
        if resp.status_code == 200:
            data = resp.json()
            rc = data.get('result', {}).get('rc_accounts', [{}])[0]
            if rc and 'rc_manabar' in rc and 'max_rc' in rc:
                current = int(rc['rc_manabar']['current_mana'])
                max_rc = int(rc['max_rc'])
                percent = round(current / max_rc * 100, 2) if max_rc > 0 else 0.0
                return percent
    except Exception:
        pass
    return None

def smart_trade(account_name, token):
    try:
        print("\n==============================")
        print(f"[TOKEN BOT] Starting Smart Trade for {token}")
        rc_percent = get_resource_credits(account_name)
        if rc_percent is not None:
            print(f"[TOKEN BOT] Resource Credits: {rc_percent}%")
            if rc_percent < 10.0:
                print(f"[TOKEN BOT] WARNING: Resource Credits too low ({rc_percent}%). Skipping trade cycle.")
                print("==============================\n")
                return
        else:
            print(f"[TOKEN BOT] Resource Credits: Unable to fetch.")
        market = get_orderbook_top(token)
        if not market:
            print(f"[TOKEN BOT] Market fetch failed for {token}. Skipping this cycle.")
            print("==============================\n")
            return
        print(f"[TOKEN BOT] Market fetch success for {token}.")
        bid = float(market.get("highestBid", 0))
        ask = float(market.get("lowestAsk", 0))
        buy_price = round(bid, 8) if bid > 0 else 0  # Buy at highest bid
        sell_price = round(ask, 8) if ask > 0 else 0  # Sell at lowest ask
        if buy_price >= sell_price and buy_price > 0:
            sell_price = round(buy_price * 1.01, 8)  # Add 1% to sell price as fallback
        hive_balance = get_balance(account_name, "SWAP.HIVE")
        token_balance = get_balance(account_name, token)
        buy_qty = round(hive_balance * 0.20 / buy_price, 8) if buy_price > 0 else 0
        sell_qty = round(token_balance * 0.20, 8)
        print(f"[TOKEN BOT] Preparing BUY: {buy_qty} {token} at {buy_price}")
        print(f"[TOKEN BOT] Preparing SELL: {sell_qty} {token} at {sell_price}")
        open_orders = get_open_orders(account_name, token)
        duplicate_buy = any(o.get('type') == 'buy' and float(o.get('price', 0)) == buy_price for o in open_orders)
        if buy_qty <= 0:
            print(f"[TOKEN BOT] Skipping BUY: buy_qty is zero or negative. Check HIVE balance and buy price.")
        elif duplicate_buy:
            print(f"[TOKEN BOT] Skipping BUY: Duplicate buy order at {buy_price} detected.")
        else:
            try:
                place_order(account_name, token, buy_price, buy_qty, order_type="buy", active_key=HIVE_ACTIVE_KEY, nodes=HIVE_NODES)
                print(f"[TOKEN BOT] BUY order submitted: {buy_qty} {token} at {buy_price}")
                time.sleep(5)
                open_orders = get_open_orders(account_name, token)
                if open_orders:
                    print(f"[TOKEN BOT] Open orders after BUY: {len(open_orders)} found.")
                else:
                    print(f"[TOKEN BOT] No open orders found after BUY (may be node delay).")
                time.sleep(1)
            except Exception as e:
                print(f"[TOKEN BOT] BUY order exception: {e}")
        min_profit_percent = 0.01
        min_sell_price = round(buy_price * (1 + min_profit_percent), 8)
        force_sell_price = min_sell_price  # Always enforce profit, ignore market ask
        if force_sell_price > buy_price and sell_qty > 0:
            open_orders = get_open_orders(account_name, token)
            duplicate_sell = any(o.get('type') == 'sell' and float(o.get('price', 0)) == force_sell_price for o in open_orders)
            if duplicate_sell:
                print(f"[TOKEN BOT] Skipping SELL: Duplicate sell order at {force_sell_price} detected.")
            else:
                try:
                    place_order(account_name, token, force_sell_price, sell_qty, order_type="sell", active_key=HIVE_ACTIVE_KEY, nodes=HIVE_NODES)
                    print(f"[TOKEN BOT] SELL order submitted: {sell_qty} {token} at {force_sell_price}")
                    print(f"[TOKEN BOT] Profit percent: {get_profit_percent(buy_price, force_sell_price)}%")
                    time.sleep(5)
                    open_orders = get_open_orders(account_name, token)
                    if open_orders:
                        print(f"[TOKEN BOT] Open orders after SELL: {len(open_orders)} found.")
                    else:
                        print(f"[TOKEN BOT] No open orders found after SELL (may be node delay).")
                    time.sleep(1)
                except Exception as e:
                    print(f"[TOKEN BOT] SELL order exception: {e}")
        else:
            print(f"[TOKEN BOT] SELL order skipped: Not profitable or sell_qty is zero.")
        print(f"[TOKEN BOT] Trade cycle for {token} complete.")
        print("==============================\n")
        time.sleep(DELAY)
    except Exception:
        print(f"[TOKEN BOT] Unexpected error in smart_trade.")

if __name__ == "__main__":
    while True:
        try:
            print(f"[TOKEN BOT] Starting new trade cycle for {TOKEN}.")
            smart_trade(HIVE_ACCOUNT, TOKEN)
            print(f"[TOKEN BOT] Waiting 10 seconds before next cycle...")
            time.sleep(10)
        except Exception:
            print(f"[TOKEN BOT] Unexpected error in main loop.")
        remaining = max(0, DELAY - 10)
        if remaining > 0:
            print(f"[TOKEN BOT] Waiting {remaining} seconds to complete delay interval...")
            time.sleep(remaining)



#hive-186392 #pimp #neoxian #waivio #proofofbrain #archon #bee #leo #creativecoin #palnet
Payout: 0.000 HBD
Votes: 9
More interactions (upvote, reblog, reply) coming soon.