StatArb / StatBot / BONUS / test2.py
test2.py
Raw
from sqlalchemy import false
from config_bonus_api import session_private

from config_bonus_api import api_key_testnet

from config_bonus_api import api_secret_testnet

from func_execution_calls import initialise_order_execution

import time

# pnl = session_private.closed_profit_and_loss(symbol="BTCUSDT")

# closed_pnl = 0
# if "ret_msg" in pnl.keys():
#         if pnl["ret_msg"] == "OK":
#             if pnl["result"]["data"] != None:
#                 for item in pnl["result"]["data"]:
#                     closed_pnl =+ item["closed_pnl"]

            
# print(closed_pnl)
            # print((pnl["result"]["data"] == None))
            # for item in pnl["result"]["data"]:
            #     closed_pnl += item["closed_pnl"]

# pos = session_private.my_position(symbol="BTCUSDT")

# print(pos)

# subs = [
#     "order"
# ]

# subs = [
#     "wallet"
# ]

# subs = [
#     "stop_order"
# ]

# subs = [
#     "position"
# ]

from pybit import WebSocket
subs = [
    "execution"
]

ws = WebSocket(
    "wss://stream-testnet.bybit.com/realtime_private",
    subscriptions=subs,
    api_key=api_key_testnet, api_secret=api_secret_testnet
)
count = 0
previous_data = []
while count <5:
    
    data = ws.fetch(subs[0])
    order = session_private.place_active_order(
                symbol="BTCUSDT",
                side="Sell",
                order_type="Market",
                qty=0.01,
                time_in_force="GoodTillCancel",
                reduce_only=False,
                close_on_trigger=False,
            )
   
    time.sleep(2)
    if data: # and previous_data != data:
        #print(data, data["price"])
        print(data)
        # print(data[0]["price"])
    count = count+1
    #previous_data = data

# from pybit import HTTP
# session = HTTP("https://api-testnet.bybit.com",
#                api_key=api_key_testnet, api_secret=api_secret_testnet)
# print(session.place_active_order(
#     symbol="BTCUSDT",
#     side="Sell",
#     order_type="Limit",
#     qty=0.01,
#     price=60000,
#     time_in_force="GoodTillCancel",
#     reduce_only=False,
#     close_on_trigger=False
# ))

# import time
# from calendar import timegm
# utc_time = time.strptime("2022-04-14T12:35:04Z", "%Y-%m-%dT%H:%M:%S%fZ")
# epoch_time = timegm(utc_time)

# print(epoch_time)

# now = datetime.datetime.now().timestamp()

# print(now)

# import sys
# # sys.path
# import main_strategy
# sym_1, sym_1_price_decimals, sym_1_qty_decimals, sym_2, sym_2_price_decimals, sym_2_qty_decimals = main_strategy.perform_strategy()
# print(sym_1, sym_1_price_decimals, sym_1_qty_decimals, sym_2, sym_2_price_decimals, sym_2_qty_decimals)

# from func_position_info import get_closed_pnl_info
# print(get_closed_pnl_info("LUNAUSDT",0))

# from tabulate import tabulate
# import pandas as pd
# x=10
# df = pd.DataFrame({'-Ve Ticker' : [round(x,1)]})

# print(tabulate(df, headers='keys', tablefmt='psql', showindex=False))

from config_bonus_api import session_private

# order = session_private.place_active_order(
#                 symbol="BTCUSDT",
#                 side="Sell",
#                 order_type="Limit",
#                 qty=0.01,
#                 price=40463,
#                 time_in_force="GoodTillCancel",
#                 reduce_only=False,
#                 close_on_trigger=False
#             )

# print(order["result"]["last_exec_price"])

# order = session_private.place_active_order(
#                 symbol=ticker,
#                 side=side,
#                 order_type="",
#                 qty=quantity,
#                 price=price,
#                 time_in_force="PostOnly",
#                 reduce_only=reduce_only,
#                 close_on_trigger=False,
#                 stop_loss=stop_loss
#             )
from func_position_info import get_position_info
side_1, size_1, pnl_un_1, pos_value_1, exception = get_position_info("HNTUSDT")

print(size_1)