{
    "id": 6964675606257717,
    "name": "My backtesting strategy",
    "owner": "wzhao",
    "data": {
        "datasources": [
            {
                "type": 6,
                "id": "688850594033338",
                "name": "Spot profit",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "tradeDate": 6,
                    "accountType": 18,
                    "margin": 39,
                    "floatingPnl": 39,
                    "realizedPnl": 39,
                    "totalPnl": 39,
                    "cash": 39,
                    "marketValue": 39,
                    "totalEquity": 39,
                    "marginRatio": 16,
                    "pnl": 39,
                    "netValue": 16,
                    "totalReturn": 16,
                    "ratio": 16,
                    "totalFee": 39,
                    "totalFundingFee": 39
                },
                "deps": [
                    "8917622888109537"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "error = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res = Backtest::getDailyTotalPortfolios(long(allEngines[userEngine]),\"spot\") \r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "1995982686294054",
                "name": "Futures profit",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "tradeDate": 6,
                    "accountType": 18,
                    "margin": 39,
                    "floatingPnl": 39,
                    "realizedPnl": 39,
                    "totalPnl": 39,
                    "cash": 39,
                    "marketValue": 39,
                    "totalEquity": 39,
                    "marginRatio": 16,
                    "pnl": 39,
                    "netValue": 16,
                    "totalReturn": 16,
                    "ratio": 16,
                    "totalFee": 39,
                    "totalFundingFee": 39
                },
                "deps": [
                    "8917622888109537"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "error = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res = Backtest::getDailyTotalPortfolios(long(allEngines[userEngine]),\"futures\") \r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "1369493564216944",
                "name": "Delete",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {},
                "deps": [
                    "419213128611478"
                ],
                "variables": [],
                "error_message": "CryptocurrencySolution::utils::dropMyBacktestEngine(\"admin_test\") => CryptocurrencySolution::utils::dropMyBacktestEngine: engineStat = Backtest::Backtest::getBacktestEngineStat(Backtest::Backtest::getBacktestEngineList()[straName]) => [PLUGIN::BACKTEST] The first arg must be a valid backtest engine.",
                "ddb": null,
                "auto_refresh": false,
                "code": "use CryptocurrencySolution::utils\r\ndropMyBacktestEngine('{{dropengine}}')\r\ntable('{{dropengine}}'as engineName,\"Deleted\" as status)\r\n\r\n",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "2893517602125528",
                "name": "Submit simulation",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {},
                "deps": [
                    "1605445192344963"
                ],
                "variables": [],
                "error_message": "newengine, name = CryptocurrencySolution::simulatedTrading::submitCryptoSimulatedTradingByStrategyName(\"admin_test\", ) => CryptocurrencySolution::simulatedTrading::submitCryptoSimulatedTradingByStrategyName: throw \"没有该回测引擎：\" + strategyName + \"请先创建该回测引擎！\" => 没有该回测引擎：admin_test请先创建该回测引擎！",
                "ddb": null,
                "auto_refresh": false,
                "code": "// table('{{toSubmit}}' as name,1 as value)\r\nuse CryptocurrencySolution::simulatedTrading\r\n\r\nnewengine,name = submitCryptoSimulatedTradingByStrategyName('{{toSubmit}}',)\r\n\r\ntable('{{toSubmit}}' as engineName,Backtest::getBacktestEngineStat(newengine)[`status] as status)",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "4845716039526574",
                "name": "User strategy list",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "engineNum": 18,
                    "name": 18,
                    "user": 18,
                    "status": 18,
                    "lastErrMsg": 18,
                    "numIndicators": 5,
                    "snapshotTimestamp": 12,
                    "startDate": 6,
                    "endDate": 6,
                    "strategyGroup": 18,
                    "Universe": 18,
                    "dataType": 4
                },
                "deps": [
                    "4981609641924617"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": true,
                "code": "use CryptocurrencySolution::utils\r\ntry{\r\n       engineList = CryptocurrencySolution::utils::getAllBacktestEngine()\r\n       res = engineListConfig(engineList)\r\n       rowsize = res.rows()\r\n       engineList = \"engine\" + string(1..rowsize)\r\n       res = table(engineList as engineNum, res)\r\n    }\r\n    catch(ex){}\r\nres\r\n",
                "interval": 60,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "8058718549335126",
                "name": "Positions",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "symbol": 18,
                    "accountType": 18,
                    "lastDayLongPosition": 39,
                    "lastDayShortPosition": 39,
                    "longPosition": 39,
                    "longPositionAvgPrice": 39,
                    "shortPosition": 39,
                    "shortPositionAvgPrice": 39,
                    "todayBuyVolume": 39,
                    "todayBuyValue": 39,
                    "todaySellVolume": 39,
                    "todaySellValue": 39
                },
                "deps": [],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "\r\nerror = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res=Backtest::getPosition(allEngines[userEngine],accountType=\"spot\").append!(Backtest::getPosition(allEngines[userEngine],accountType=\"futures\")) \r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "551263058591349",
                "name": "Profit summary",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "accountType": 18,
                    "totalReturn": 16,
                    "annualReturn": 16,
                    "annualVolatility": 16,
                    "annualSkew": 16,
                    "annualKur": 16,
                    "sharpeRatio": 16,
                    "maxDrawdown": 16,
                    "drawdownRatio": 16,
                    "beta": 16,
                    "alpha": 16,
                    "annualExcessReturn": 16,
                    "turnoverRate": 16,
                    "dailyWinningRate": 16,
                    "maxMarginRatio": 16
                },
                "deps": [
                    "271960415380564"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "\r\nerror = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res=Backtest::getReturnSummary(long(allEngines[userEngine])) \r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "1787792694653141",
                "name": "Total asset",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "tradeDate": 6,
                    "accountType": 18,
                    "margin": 39,
                    "floatingPnl": 39,
                    "realizedPnl": 39,
                    "totalPnl": 39,
                    "cash": 39,
                    "marketValue": 39,
                    "totalEquity": 39,
                    "marginRatio": 16,
                    "pnl": 39,
                    "netValue": 16,
                    "totalReturn": 16,
                    "ratio": 16,
                    "totalFee": 39,
                    "totalFundingFee": 39
                },
                "deps": [
                    "9001077398390041"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "error = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res = Backtest::getDailyTotalPortfolios(long(allEngines[userEngine])) \r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "7745046273190469",
                "name": "Available asset",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "cash": 18,
                    "value": 39
                },
                "deps": [
                    "6540000367920909"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "\r\nerror = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res=table(`cash as cash,Backtest::getAvailableCash(long(allEngines[userEngine])) as value) \r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "801612560813910",
                "name": "Daily positions",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "symbol": 18,
                    "accountType": 18,
                    "tradeDate": 6,
                    "lastDayLongPosition": 39,
                    "lastDayShortPosition": 39,
                    "longPosition": 39,
                    "longPositionAvgPrice": 39,
                    "shortPosition": 39,
                    "shortPositionAvgPrice": 39,
                    "todayBuyVolume": 39,
                    "todayBuyValue": 39,
                    "todaySellVolume": 39,
                    "todaySellValue": 39
                },
                "deps": [
                    "4996719637656052"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "\r\nerror = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res = Backtest::getDailyPosition(long(allEngines[userEngine]),'spot')[0].transpose()\r\n        res1 =  Backtest::getDailyPosition(long(allEngines[userEngine]),\"futures\")[0].transpose()\r\n        res.append!(res1)\r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "5057651463912178",
                "name": "Cancellation record",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "orderId": 5,
                    "symbol": 17,
                    "direction": 4,
                    "sendTime": 12,
                    "orderPrice": 39,
                    "orderQty": 39,
                    "tradeTime": 12,
                    "tradePrice": 39,
                    "tradeQty": 39,
                    "orderStatus": 4,
                    "label": 18,
                    "accountType": 18
                },
                "deps": [
                    "3869493379231772"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "\r\nerror = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res = Backtest::getTradeDetails(allEngines[userEngine])\r\n        res1 = res[res.orderStatus == -3] \r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nres1 ",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            },
            {
                "type": 6,
                "id": "3802192863552051",
                "name": "Trade details",
                "mode": "sql",
                "max_line": null,
                "data": [],
                "cols": [],
                "type_map": {
                    "orderId": 5,
                    "symbol": 145,
                    "direction": 4,
                    "sendTime": 12,
                    "orderPrice": 39,
                    "orderQty": 39,
                    "tradeTime": 12,
                    "tradePrice": 39,
                    "tradeQty": 39,
                    "orderStatus": 4,
                    "label": 18,
                    "accountType": 18
                },
                "deps": [
                    "2953252339907458"
                ],
                "variables": [],
                "error_message": "",
                "ddb": null,
                "auto_refresh": false,
                "code": "\r\nerror = true\r\nretry = 0\r\ndo{\r\n    try{\r\n        userEngine = string({{engine1}})\r\n        allEngines = Backtest::getBacktestEngineList()  \r\n        res = Backtest::getTradeDetails(allEngines[userEngine])\r\n        error = false\r\n    }\r\n    catch(ex){\r\n        retry += 1\r\n        if(retry > 100){\r\n            error = false\r\n        }\r\n    }\r\n}while(error)\r\n\r\nselect * from res context by symbol order by tradeTime  limit 1000",
                "interval": 1,
                "timer": null,
                "filter": false,
                "stream_table": "",
                "filter_column": "",
                "filter_expression": "",
                "ip": ""
            }
        ],
        "variables": [
            {
                "id": "8751023248871784",
                "name": "engine1",
                "display_name": "Engine No.",
                "mode": "select",
                "code": "\r\n\r\n \r\n",
                "deps": [],
                "value": "CryptocurrencySolution::utils::getAllBacktestEngine()[0]",
                "options": [
                    {
                        "key": "3163019156689804",
                        "label": "engine1",
                        "value": "CryptocurrencySolution::utils::getAllBacktestEngine()[0]"
                    },
                    {
                        "label": "engine2",
                        "value": "CryptocurrencySolution::utils::getAllBacktestEngine()[1]",
                        "key": "5138656406531570"
                    },
                    {
                        "label": "engine3",
                        "value": "CryptocurrencySolution::utils::getAllBacktestEngine()[2]",
                        "key": "5405839093002650"
                    }
                ],
                "select_key": "3163019156689804"
            },
            {
                "id": "7682222211923294",
                "name": "dropengine",
                "display_name": "Delete strategy",
                "mode": "select",
                "code": "use CryptocurrencySolution::utils\r\nvec = CryptocurrencySolution::utils::getAllBacktestEngine()\r\ntable(vec as label, vec as value)\r\n\r\n \r\n",
                "deps": [],
                "value": "admin_test",
                "options": [
                    {
                        "key": "1297546649419571",
                        "label": "admin_test",
                        "value": "admin_test"
                    }
                ],
                "select_key": "1297546649419571"
            },
            {
                "id": "1767206586878931",
                "name": "toSubmit",
                "display_name": "Simulation strategy to be submitted",
                "mode": "select",
                "code": "use CryptocurrencySolution::utils\r\nvec = CryptocurrencySolution::utils::getAllBacktestEngine()\r\ntable(vec as label, vec as value)\r\n",
                "deps": [],
                "value": "admin_test",
                "options": [
                    {
                        "key": "6122090761716671",
                        "label": "admin_test",
                        "value": "admin_test"
                    }
                ],
                "select_key": "6122090761716671"
            }
        ],
        "canvas": {
            "widgets": [
                {
                    "id": "2953252339907458",
                    "w": 12,
                    "h": 5,
                    "x": 0,
                    "y": 0,
                    "type": "TABLE",
                    "source_id": [
                        "3802192863552051"
                    ],
                    "config": {
                        "title": "Trade details",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 1,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_cols": 3,
                        "with_search_btn": false,
                        "search_btn_label": "Query",
                        "col_properties": [
                            {
                                "col": "orderId",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "symbol",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": true
                            },
                            {
                                "col": "direction",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "sendTime",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "orderPrice",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "orderQty",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "tradeTime",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "tradePrice",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "tradeQty",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "orderStatus",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "label",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "accountType",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "3869493379231772",
                    "w": 12,
                    "h": 5,
                    "x": 0,
                    "y": 5,
                    "type": "TABLE",
                    "source_id": [
                        "5057651463912178"
                    ],
                    "config": {
                        "title": "Cancellation record",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 12,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_cols": 3,
                        "with_search_btn": false,
                        "search_btn_label": "Query",
                        "col_properties": [
                            {
                                "col": "orderId",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "symbol",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "direction",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "sendTime",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "orderPrice",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "orderQty",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "tradeTime",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "tradePrice",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "tradeQty",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "orderStatus",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "label",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "accountType",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "4996719637656052",
                    "w": 12,
                    "h": 3,
                    "x": 0,
                    "y": 10,
                    "type": "TABLE",
                    "source_id": [
                        "801612560813910"
                    ],
                    "config": {
                        "title": "Daily positions",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 1,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_cols": 3,
                        "with_search_btn": false,
                        "search_btn_label": "Query",
                        "col_properties": [
                            {
                                "col": "symbol",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "accountType",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "tradeDate",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "lastDayLongPosition",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "lastDayShortPosition",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "longPosition",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "longPositionAvgPrice",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "shortPosition",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "shortPositionAvgPrice",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "todayBuyVolume",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "todayBuyValue",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "todaySellVolume",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "todaySellValue",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "6540000367920909",
                    "w": 3,
                    "h": 3,
                    "x": 1,
                    "y": 27,
                    "type": "TABLE",
                    "source_id": [
                        "7745046273190469"
                    ],
                    "config": {
                        "title": "Available asset",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 12,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_cols": 3,
                        "with_search_btn": false,
                        "search_btn_label": "Query",
                        "col_properties": [
                            {
                                "col": "cash",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "value",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "9001077398390041",
                    "w": 12,
                    "h": 5,
                    "x": 0,
                    "y": 13,
                    "type": "TABLE",
                    "source_id": [
                        "1787792694653141"
                    ],
                    "config": {
                        "title": "Total asset",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 0,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_cols": 3,
                        "with_search_btn": false,
                        "search_btn_label": "Query",
                        "col_properties": [
                            {
                                "col": "tradeDate",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "accountType",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "margin",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "floatingPnl",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "realizedPnl",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "totalPnl",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "cash",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "marketValue",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "totalEquity",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "marginRatio",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "pnl",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "netValue",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "totalReturn",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "ratio",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "totalFee",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "totalFundingFee",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "271960415380564",
                    "w": 12,
                    "h": 5,
                    "x": 0,
                    "y": 18,
                    "type": "TABLE",
                    "source_id": [
                        "551263058591349"
                    ],
                    "config": {
                        "title": "Profit summary",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 12,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_ids": [
                            "8751023248871784"
                        ],
                        "variable_cols": 1,
                        "variable_form_label_col": null,
                        "with_search_btn": true,
                        "search_btn_label": "Query",
                        "col_properties": [
                            {
                                "col": "accountType",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "totalReturn",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "annualReturn",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "annualVolatility",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "annualSkew",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "annualKur",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "sharpeRatio",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "maxDrawdown",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "drawdownRatio",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "beta",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "alpha",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "annualExcessReturn",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "turnoverRate",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "dailyWinningRate",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "maxMarginRatio",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "4981609641924617",
                    "w": 12,
                    "h": 4,
                    "x": 0,
                    "y": 23,
                    "type": "TABLE",
                    "source_id": [
                        "4845716039526574"
                    ],
                    "config": {
                        "title": "Title",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 12,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_cols": 3,
                        "with_search_btn": false,
                        "search_btn_label": "Query",
                        "col_properties": [
                            {
                                "col": "engineNum",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "name",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "user",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "status",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "lastErrMsg",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "numIndicators",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "snapshotTimestamp",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "startDate",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "endDate",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "strategyGroup",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "Universe",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "dataType",
                                "show": true,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "1605445192344963",
                    "w": 5,
                    "h": 4,
                    "x": 5,
                    "y": 27,
                    "type": "TABLE",
                    "source_id": [
                        "2893517602125528"
                    ],
                    "config": {
                        "title": "Submission result",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 12,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_ids": [
                            "1767206586878931"
                        ],
                        "variable_cols": 1,
                        "with_search_btn": true,
                        "search_btn_label": "Submit simulation",
                        "col_properties": [],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "419213128611478",
                    "w": 5,
                    "h": 4,
                    "x": 1,
                    "y": 31,
                    "type": "TABLE",
                    "source_id": [
                        "1369493564216944"
                    ],
                    "config": {
                        "title": "",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 12,
                            "left": 12,
                            "right": 12
                        },
                        "bordered": false,
                        "max_content": false,
                        "need_select_cols": false,
                        "is_reverse": false,
                        "variable_ids": [
                            "7682222211923294"
                        ],
                        "variable_cols": 1,
                        "with_search_btn": true,
                        "search_btn_label": "Confirm deletion",
                        "col_properties": [
                            {
                                "col": "name",
                                "show": false,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            },
                            {
                                "col": "value",
                                "show": false,
                                "with_value_format": false,
                                "font_size": 14,
                                "is_thousandth_place": false,
                                "align": "left",
                                "sorter": false
                            }
                        ],
                        "pagination": {
                            "show": true
                        }
                    }
                },
                {
                    "id": "8917622888109537",
                    "w": 12,
                    "h": 9,
                    "x": 0,
                    "y": 35,
                    "type": "COMPOSITE_GRAPH",
                    "source_id": [
                        "688850594033338",
                        "1995982686294054"
                    ],
                    "config": {
                        "title": "Up to the daily profit curve",
                        "title_size": 18,
                        "padding": {
                            "top": 12,
                            "bottom": 12,
                            "left": 12,
                            "right": 12
                        },
                        "animation": true,
                        "automatic_mode": false,
                        "variable_cols": 3,
                        "with_search_btn": false,
                        "search_btn_label": "Query",
                        "legend": {
                            "show": true,
                            "top": null,
                            "bottom": null,
                            "left": "center",
                            "right": null,
                            "textStyle": {
                                "color": "#fff"
                            },
                            "itemHeight": 14
                        },
                        "tooltip": {
                            "show": true
                        },
                        "splitLine": {
                            "show": false,
                            "lineStyle": {
                                "color": "#6E6F7A",
                                "width": 1,
                                "type": "dashed"
                            }
                        },
                        "x_datazoom": false,
                        "y_datazoom": false,
                        "xAxis": {
                            "type": "time",
                            "name": "Time",
                            "fontsize": 12,
                            "axis_color": "#000000",
                            "time_format": "YYYY-MM-DD"
                        },
                        "yAxis": [
                            {
                                "type": "value",
                                "name": "Return axis",
                                "position": "left",
                                "offset": 0,
                                "fontsize": 12,
                                "with_zero": true
                            },
                            {
                                "type": "value",
                                "name": "NV axis",
                                "fontsize": 12,
                                "with_zero": true,
                                "position": "right",
                                "offset": 0,
                                "axis_color": "#000000"
                            }
                        ],
                        "series": [
                            {
                                "type": "LINE",
                                "color": "#00d4aa",
                                "yAxisIndex": 0,
                                "line_type": "solid",
                                "is_filled": false,
                                "end_label": false,
                                "data_source_id": "688850594033338",
                                "x_col_name": "tradeDate",
                                "col_name": "totalReturn",
                                "name": "Spot: up to daily profit"
                            },
                            {
                                "type": "BAR",
                                "color": "#b565d8",
                                "yAxisIndex": 2,
                                "line_type": "solid",
                                "is_filled": false,
                                "end_label": false,
                                "data_source_id": "688850594033338",
                                "x_col_name": "tradeDate",
                                "col_name": "pnl",
                                "name": "Spot: daily net P&L"
                            },
                            {
                                "type": "LINE",
                                "color": "#ff4444",
                                "yAxisIndex": 0,
                                "line_type": "solid",
                                "is_filled": false,
                                "end_label": false,
                                "data_source_id": "1995982686294054",
                                "x_col_name": "tradeDate",
                                "col_name": "totalReturn",
                                "name": "Spot: up to daily profit"
                            },
                            {
                                "type": "BAR",
                                "color": "#ff6835",
                                "yAxisIndex": 1,
                                "line_type": "solid",
                                "is_filled": false,
                                "end_label": false,
                                "data_source_id": "1995982686294054",
                                "x_col_name": "tradeDate",
                                "col_name": "pnl",
                                "name": "Spot: daily net P&L"
                            }
                        ],
                        "thresholds": []
                    }
                }
            ],
            "page_count": 4,
            "auto_expand": true
        }
    },
    "createTime": "2025.08.28 13:46:09.637",
    "permission": 0
}