Release v1.0.2

This commit is contained in:
Oleg Sheynin
2026-07-29 00:39:10 +00:00
parent 49c91e5d85
commit a3e5acd765
8 changed files with 764 additions and 96 deletions
+51
View File
@@ -5,17 +5,22 @@ import pandas as pd
import pytest
from scripts.spbt_day import (
ANALYZE_BUTTON_COLUMN,
PAIR_NAME_VALUE_COLUMN,
add_total_pnl,
calculate_pair_theo_executions,
calculate_pair_theo_ret,
calculate_ranked_pairs_theo_ret,
create_pair_name_dropdown,
create_pair_theo_ret_analyze_grid,
create_pair_trades_market_plot,
create_selected_pair_executions_grid,
connect_sqlite_read_only,
create_total_pnl_histogram,
find_repo_root,
format_pair_name_for_display,
format_pair_names_for_display,
format_pair_theo_ret_for_analyze_grid,
infer_trading_day_start_ns,
list_candidate_files,
load_pair_market_data,
@@ -985,6 +990,52 @@ def test_format_pair_names_for_display_removes_usd_suffix_without_mutating_sourc
]
def test_format_pair_theo_ret_for_analyze_grid_preserves_full_pair_name():
pair_theo_ret = pd.DataFrame(
{
"pair_name": ["AAA:USD-BBB:USD"],
"mr_ranking": [1],
"realized_pnl": [1.0],
"unrealized_pnl": [0.0],
}
)
formatted = format_pair_theo_ret_for_analyze_grid(pair_theo_ret)
assert formatted["pair_name"].tolist() == ["AAA-BBB"]
assert formatted[PAIR_NAME_VALUE_COLUMN].tolist() == ["AAA:USD-BBB:USD"]
assert pair_theo_ret["pair_name"].tolist() == ["AAA:USD-BBB:USD"]
def test_create_panel_grids_use_analyze_button_and_hidden_pair_column():
pair_grid = create_pair_theo_ret_analyze_grid(
pd.DataFrame(
{
"pair_name": ["AAA-BBB"],
PAIR_NAME_VALUE_COLUMN: ["AAA:USD-BBB:USD"],
}
)
)
executions_grid = create_selected_pair_executions_grid()
assert pair_grid.buttons.keys() == {ANALYZE_BUTTON_COLUMN}
assert pair_grid.hidden_columns == [PAIR_NAME_VALUE_COLUMN]
assert pair_grid.disabled is False
assert pair_grid.pagination is None
assert pair_grid.layout == "fit_data_table"
assert pair_grid.sizing_mode == "fixed"
assert executions_grid.value.columns.tolist() == [
"time",
"asset",
"action",
"side",
"strength",
"size",
"price",
"usd_value",
]
def test_show_interactive_dataframe_uses_sortable_grid_defaults(monkeypatch):
calls = []