From ca9fff8d887e1a2f3a835349fef2a6593a63dd64 Mon Sep 17 00:00:00 2001 From: Oleg Sheynin Date: Fri, 18 Jul 2025 23:13:11 +0000 Subject: [PATCH] progress --- research/notebooks/pt_sliding.ipynb | 74 ++++++++++++++--------------- 1 file changed, 36 insertions(+), 38 deletions(-) diff --git a/research/notebooks/pt_sliding.ipynb b/research/notebooks/pt_sliding.ipynb index 94f5329..a2d2f57 100644 --- a/research/notebooks/pt_sliding.ipynb +++ b/research/notebooks/pt_sliding.ipynb @@ -43,7 +43,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 29, "metadata": {}, "outputs": [], "source": [ @@ -105,7 +105,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 30, "metadata": {}, "outputs": [], "source": [ @@ -147,7 +147,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 31, "metadata": {}, "outputs": [], "source": [ @@ -227,7 +227,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 32, "metadata": {}, "outputs": [], "source": [ @@ -314,7 +314,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 33, "metadata": {}, "outputs": [], "source": [ @@ -375,7 +375,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 34, "metadata": {}, "outputs": [], "source": [ @@ -420,7 +420,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 35, "metadata": {}, "outputs": [], "source": [ @@ -512,7 +512,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 36, "metadata": {}, "outputs": [], "source": [ @@ -582,7 +582,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 37, "metadata": {}, "outputs": [], "source": [ @@ -775,11 +775,12 @@ " if len(symbol_a_trades) > 0:\n", " # Separate trades by action and status for different colors\n", " buy_open_trades = symbol_a_trades[(symbol_a_trades['action'].str.contains('BUY', na=False)) & \n", - " (symbol_a_trades['status'] == 'OPEN')]\n", + " (symbol_a_trades['status'].str.startswith('OPEN'))]\n", " buy_close_trades = symbol_a_trades[(symbol_a_trades['action'].str.contains('BUY', na=False)) & \n", " (symbol_a_trades['status'].str.startswith('CLOSE'))]\n", + " \n", " sell_open_trades = symbol_a_trades[(symbol_a_trades['action'].str.contains('SELL', na=False)) & \n", - " (symbol_a_trades['status'] == 'OPEN')]\n", + " (symbol_a_trades['status'].str.startswith('OPEN'))]\n", " sell_close_trades = symbol_a_trades[(symbol_a_trades['action'].str.contains('SELL', na=False)) & \n", " (symbol_a_trades['status'].str.startswith('CLOSE'))]\n", " \n", @@ -858,15 +859,14 @@ " if len(symbol_b_trades) > 0:\n", " # Separate trades by action and status for different colors\n", " buy_open_trades = symbol_b_trades[(symbol_b_trades['action'].str.contains('BUY', na=False)) & \n", - " (symbol_b_trades['status'] == 'OPEN')]\n", + " (symbol_b_trades['status'].str.startswith('OPEN'))]\n", " buy_close_trades = symbol_b_trades[(symbol_b_trades['action'].str.contains('BUY', na=False)) & \n", - " ((symbol_b_trades['status'] == 'CLOSE') | \n", - " (symbol_b_trades['status'] == 'CLOSE_POSITION'))]\n", + " (symbol_b_trades['status'].str.startswith('CLOSE'))]\n", + " \n", " sell_open_trades = symbol_b_trades[(symbol_b_trades['action'].str.contains('SELL', na=False)) & \n", - " (symbol_b_trades['status'] == 'OPEN')]\n", + " (symbol_b_trades['status'].str.startswith('OPEN'))]\n", " sell_close_trades = symbol_b_trades[(symbol_b_trades['action'].str.contains('SELL', na=False)) & \n", - " ((symbol_b_trades['status'] == 'CLOSE') | \n", - " (symbol_b_trades['status'] == 'CLOSE_POSITION'))]\n", + " (symbol_b_trades['status'].str.startswith('CLOSE'))]\n", " \n", " # Add BUY OPEN signals\n", " if len(buy_open_trades) > 0:\n", @@ -876,7 +876,7 @@ " y=buy_open_trades['price'],\n", " mode='markers',\n", " name=f'{SYMBOL_B} BUY OPEN',\n", - " marker=dict(color='green', size=12, symbol='triangle-up'),\n", + " marker=dict(color='darkgreen', size=12, symbol='triangle-up'),\n", " showlegend=True\n", " ),\n", " row=4, col=1\n", @@ -890,7 +890,7 @@ " y=buy_close_trades['price'],\n", " mode='markers',\n", " name=f'{SYMBOL_B} BUY CLOSE',\n", - " marker=dict(color='green', size=12, symbol='triangle-up'),\n", + " marker=dict(color='darkgreen', size=12, symbol='triangle-up'),\n", " showlegend=True\n", " ),\n", " row=4, col=1\n", @@ -904,7 +904,7 @@ " y=sell_open_trades['price'],\n", " mode='markers',\n", " name=f'{SYMBOL_B} SELL OPEN',\n", - " marker=dict(color='red', size=12, symbol='triangle-down'),\n", + " marker=dict(color='darkred', size=12, symbol='triangle-down'),\n", " showlegend=True\n", " ),\n", " row=4, col=1\n", @@ -918,7 +918,7 @@ " y=sell_close_trades['price'],\n", " mode='markers',\n", " name=f'{SYMBOL_B} SELL CLOSE',\n", - " marker=dict(color='red', size=12, symbol='triangle-down'),\n", + " marker=dict(color='darkred', size=12, symbol='triangle-down'),\n", " showlegend=True\n", " ),\n", " row=4, col=1\n", @@ -1035,13 +1035,11 @@ " \n", " # Determine marker properties (same for all OPEN/CLOSE of same action)\n", " if 'BUY' in action:\n", - " # marker_color = 'green' if symbol == SYMBOL_A else 'darkgreen'\n", - " marker_color = 'darkgreen'\n", + " marker_color = 'green' if symbol == SYMBOL_A else 'darkgreen'\n", " marker_symbol = 'triangle-up'\n", " marker_size = 14\n", " else: # SELL\n", - " # marker_color = 'orange' if symbol == SYMBOL_A else 'darkred'\n", - " marker_color = 'darkred'\n", + " marker_color = 'red' if symbol == SYMBOL_A else 'darkred'\n", " marker_symbol = 'triangle-down'\n", " marker_size = 14\n", " \n", @@ -1133,7 +1131,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 38, "metadata": {}, "outputs": [], "source": [ @@ -1203,7 +1201,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 39, "metadata": {}, "outputs": [], "source": [ @@ -1284,7 +1282,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 40, "metadata": {}, "outputs": [ { @@ -2877,7 +2875,7 @@ }, { "marker": { - "color": "green", + "color": "darkgreen", "size": 12, "symbol": "triangle-up" }, @@ -2897,7 +2895,7 @@ }, { "marker": { - "color": "green", + "color": "darkgreen", "size": 12, "symbol": "triangle-up" }, @@ -2917,7 +2915,7 @@ }, { "marker": { - "color": "red", + "color": "darkred", "size": 12, "symbol": "triangle-down" }, @@ -2937,7 +2935,7 @@ }, { "marker": { - "color": "red", + "color": "darkred", "size": 12, "symbol": "triangle-down" }, @@ -3961,9 +3959,9 @@ }, "text/html": [ "
\n", - "
\n", - "