File size: 1,493 Bytes
09240da
0487dc0
09240da
 
 
 
 
4f7c20c
 
 
 
 
09240da
 
 
 
 
 
 
 
0487dc0
 
4f7c20c
 
 
 
 
 
09240da
4f7c20c
 
 
09240da
 
ba0ca62
09240da
1bda8f5
 
 
 
 
 
 
 
09240da
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import logging
from utils import measure_execution_time, DATA_DIR, TMP_DIR
from profitability import (
    analyse_all_traders,
    label_trades_by_staking,
)
import pandas as pd
from nr_mech_calls import (
    create_unknown_traders_df,
    compute_daily_mech_calls,
    transform_to_datetime,
)

logging.basicConfig(level=logging.INFO)


@measure_execution_time
def prepare_live_metrics(
    tools_filename="new_tools.parquet", trades_filename="new_fpmmTrades.parquet"
):
    fpmmTrades = pd.read_parquet(TMP_DIR / trades_filename)
    tools = pd.read_parquet(TMP_DIR / tools_filename)

    fpmmTrades["creationTimestamp"] = fpmmTrades["creationTimestamp"].apply(
        lambda x: transform_to_datetime(x)
    )
    print("Computing the estimated mech calls dataset")
    trader_mech_calls = compute_daily_mech_calls(fpmmTrades=fpmmTrades, tools=tools)
    print("Analysing trades...")
    all_trades_df = analyse_all_traders(
        fpmmTrades, tools, trader_mech_calls, daily_info=True
    )

    # staking label
    all_trades_df = label_trades_by_staking(all_trades_df)

    # create the unknown traders dataset
    unknown_traders_df, all_trades_df = create_unknown_traders_df(
        trades_df=all_trades_df
    )
    unknown_traders_df.to_parquet(
        TMP_DIR / "unknown_daily_traders.parquet", index=False
    )

    # save into a separate file
    all_trades_df.to_parquet(DATA_DIR / "daily_info.parquet", index=False)


if __name__ == "__main__":
    prepare_live_metrics()