Spaces:
Sleeping
Sleeping
Upload folder using huggingface_hub
Browse files- .gradio/certificate.pem +31 -0
- app.py +18 -8
.gradio/certificate.pem
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
-----BEGIN CERTIFICATE-----
|
| 2 |
+
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
|
| 31 |
+
-----END CERTIFICATE-----
|
app.py
CHANGED
|
@@ -9,7 +9,7 @@ import numpy as np
|
|
| 9 |
|
| 10 |
base_addresses = ["0x45e7035499bc860dA0b5666A93B97AFc51F3cD3F",'0x8Ff84fa392340d4683C57A602AC400C3D2fF5cdD','0xA6bbEFBB13BBbcA0022a270c734674146DCcf668','0x43D04107E14C19DCDd2C0D0afC33cDa458b349A3','0xA19f7F0643FF7f655D3E39D0689caa3D53944AAE']
|
| 11 |
|
| 12 |
-
lp_wallets = ["0x45e7035499bc860dA0b5666A93B97AFc51F3cD3F"]
|
| 13 |
|
| 14 |
def chunk_addresses(addresses, size):
|
| 15 |
return [addresses[i:i + size] for i in range(0, len(addresses), size)]
|
|
@@ -77,12 +77,13 @@ async def get_wallet_base_balances(addresses):
|
|
| 77 |
df_lp_only = df[df['address'] == '0x45e7035499bc860da0b5666a93b97afc51f3cd3f'].copy()
|
| 78 |
df_lp_only = df_lp_only[['symbol','tokenBalance','value']]
|
| 79 |
df_lp_only = df_lp_only.rename(columns={'tokenBalance':'amount','value':'usd_value'})
|
| 80 |
-
|
| 81 |
-
|
|
|
|
| 82 |
|
| 83 |
-
|
| 84 |
|
| 85 |
-
return
|
| 86 |
|
| 87 |
async def fetch_lp():
|
| 88 |
url = "https://public.zapper.xyz/graphql"
|
|
@@ -227,25 +228,34 @@ async def get_all_dfs():
|
|
| 227 |
lp_df['price'] = lp_df['symbol'].map(symbols)
|
| 228 |
lp_df['price'] = lp_df['price'] * lp_df['amount']
|
| 229 |
lp_df.rename(columns={"price":"usd_value"},inplace=True)
|
|
|
|
|
|
|
| 230 |
for col in ['amount','usd_value']:
|
| 231 |
df[col] = pd.to_numeric(df[col], errors='coerce')
|
| 232 |
df[col] = df[col].apply(lambda x: f"{x:,.2f}")
|
| 233 |
df_lp_only[col] = pd.to_numeric(df_lp_only[col], errors='coerce')
|
| 234 |
df_lp_only[col] = df_lp_only[col].apply(lambda x: f"{x:,.2f}")
|
| 235 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 236 |
|
| 237 |
with gr.Blocks() as demo:
|
| 238 |
gr.Markdown("## VICE Balances & PnL")
|
| 239 |
|
| 240 |
df0_out = gr.Dataframe(label="Starting Balances")
|
| 241 |
-
df1_out = gr.Dataframe(label="
|
| 242 |
df3_out = gr.Dataframe(label="LP Wallet Balances")
|
| 243 |
df2_out = gr.Dataframe(label="LP Position Balances")
|
|
|
|
| 244 |
|
| 245 |
demo.load(
|
| 246 |
fn= get_all_dfs,
|
| 247 |
inputs = [],
|
| 248 |
-
outputs=[df0_out,df1_out,df2_out,df3_out]
|
| 249 |
)
|
| 250 |
|
| 251 |
|
|
|
|
| 9 |
|
| 10 |
base_addresses = ["0x45e7035499bc860dA0b5666A93B97AFc51F3cD3F",'0x8Ff84fa392340d4683C57A602AC400C3D2fF5cdD','0xA6bbEFBB13BBbcA0022a270c734674146DCcf668','0x43D04107E14C19DCDd2C0D0afC33cDa458b349A3','0xA19f7F0643FF7f655D3E39D0689caa3D53944AAE']
|
| 11 |
|
| 12 |
+
lp_wallets = ["0x45e7035499bc860dA0b5666A93B97AFc51F3cD3F",'0x8Ff84fa392340d4683C57A602AC400C3D2fF5cdD','0xA6bbEFBB13BBbcA0022a270c734674146DCcf668','0x43D04107E14C19DCDd2C0D0afC33cDa458b349A3','0xA19f7F0643FF7f655D3E39D0689caa3D53944AAE']
|
| 13 |
|
| 14 |
def chunk_addresses(addresses, size):
|
| 15 |
return [addresses[i:i + size] for i in range(0, len(addresses), size)]
|
|
|
|
| 77 |
df_lp_only = df[df['address'] == '0x45e7035499bc860da0b5666a93b97afc51f3cd3f'].copy()
|
| 78 |
df_lp_only = df_lp_only[['symbol','tokenBalance','value']]
|
| 79 |
df_lp_only = df_lp_only.rename(columns={'tokenBalance':'amount','value':'usd_value'})
|
| 80 |
+
taker_df = df[df['address'] != '0x45e7035499bc860da0b5666a93b97afc51f3cd3f'].copy()
|
| 81 |
+
taker_df= taker_df[['symbol','tokenBalance','value']]
|
| 82 |
+
taker_df = taker_df.rename(columns={'tokenBalance':'amount','value':'usd_value'})
|
| 83 |
|
| 84 |
+
taker_df = taker_df.groupby("symbol", as_index=False).sum()
|
| 85 |
|
| 86 |
+
return taker_df, taker_df['usd_value'].sum(), eth_price, base_price, df_lp_only
|
| 87 |
|
| 88 |
async def fetch_lp():
|
| 89 |
url = "https://public.zapper.xyz/graphql"
|
|
|
|
| 228 |
lp_df['price'] = lp_df['symbol'].map(symbols)
|
| 229 |
lp_df['price'] = lp_df['price'] * lp_df['amount']
|
| 230 |
lp_df.rename(columns={"price":"usd_value"},inplace=True)
|
| 231 |
+
|
| 232 |
+
total_current_balances = pd.concat([df,lp_df,df_lp_only]).groupby('symbol').agg({'amount':'sum','usd_value':'sum'}).reset_index()
|
| 233 |
for col in ['amount','usd_value']:
|
| 234 |
df[col] = pd.to_numeric(df[col], errors='coerce')
|
| 235 |
df[col] = df[col].apply(lambda x: f"{x:,.2f}")
|
| 236 |
df_lp_only[col] = pd.to_numeric(df_lp_only[col], errors='coerce')
|
| 237 |
df_lp_only[col] = df_lp_only[col].apply(lambda x: f"{x:,.2f}")
|
| 238 |
+
lp_df[col] = pd.to_numeric(lp_df[col], errors='coerce')
|
| 239 |
+
lp_df[col] = lp_df[col].apply(lambda x: f"{x:,.2f}")
|
| 240 |
+
total_current_balances[col] = pd.to_numeric(total_current_balances[col], errors='coerce')
|
| 241 |
+
total_current_balances[col] = total_current_balances[col].apply(lambda x: f"{x:,.2f}")
|
| 242 |
+
|
| 243 |
+
|
| 244 |
+
return starting_df,df,lp_df,df_lp_only,total_current_balances
|
| 245 |
|
| 246 |
with gr.Blocks() as demo:
|
| 247 |
gr.Markdown("## VICE Balances & PnL")
|
| 248 |
|
| 249 |
df0_out = gr.Dataframe(label="Starting Balances")
|
| 250 |
+
df1_out = gr.Dataframe(label="Taker Balances")
|
| 251 |
df3_out = gr.Dataframe(label="LP Wallet Balances")
|
| 252 |
df2_out = gr.Dataframe(label="LP Position Balances")
|
| 253 |
+
df4_out = gr.Dataframe(label="Total Current Balances")
|
| 254 |
|
| 255 |
demo.load(
|
| 256 |
fn= get_all_dfs,
|
| 257 |
inputs = [],
|
| 258 |
+
outputs=[df0_out,df1_out,df2_out,df3_out,df4_out]
|
| 259 |
)
|
| 260 |
|
| 261 |
|