diff --git a/examples/spread_backtesting/backtesting.ipynb b/examples/spread_backtesting/backtesting.ipynb index 459ea279..f559f0c9 100644 --- a/examples/spread_backtesting/backtesting.ipynb +++ b/examples/spread_backtesting/backtesting.ipynb @@ -65,41 +65,614 @@ "name": "stdout", "output_type": "stream", "text": [ - "2019-11-10 16:33:53.249984\t开始加载历史数据\n", - "2019-11-10 16:33:56.769516\t历史数据加载完成,数据量:7200\n", - "2019-11-10 16:33:56.816391\t策略初始化完成\n", - "2019-11-10 16:33:56.816391\t开始回放历史数据\n", - "2019-11-10 16:33:56.957016\t历史数据回放结束\n", - "2019-11-10 16:33:56.957016\t开始计算逐日盯市盈亏\n", - "2019-11-10 16:33:56.957016\t逐日盯市盈亏计算完成\n", - "2019-11-10 16:33:56.957016\t开始计算策略统计指标\n", - "2019-11-10 16:33:56.990219\t------------------------------\n", - "2019-11-10 16:33:56.991195\t首个交易日:\t2019-10-14\n", - "2019-11-10 16:33:56.991195\t最后交易日:\t2019-11-08\n", - "2019-11-10 16:33:56.992172\t总交易日:\t20\n", - "2019-11-10 16:33:56.992172\t盈利交易日:\t12\n", - "2019-11-10 16:33:56.992172\t亏损交易日:\t8\n", - "2019-11-10 16:33:56.993148\t起始资金:\t1,000,000.00\n", - "2019-11-10 16:33:56.993148\t结束资金:\t1,075,600.00\n", - "2019-11-10 16:33:56.994125\t总收益率:\t7.56%\n", - "2019-11-10 16:33:56.994125\t年化收益:\t90.72%\n", - "2019-11-10 16:33:56.994125\t最大回撤: \t-24,600.00\n", - "2019-11-10 16:33:56.995102\t百分比最大回撤: -2.29%\n", - "2019-11-10 16:33:56.995102\t最长回撤天数: \t9\n", - "2019-11-10 16:33:56.996078\t总盈亏:\t75,600.00\n", - "2019-11-10 16:33:56.996078\t总手续费:\t0.00\n", - "2019-11-10 16:33:56.996078\t总滑点:\t0.00\n", - "2019-11-10 16:33:56.997055\t总成交金额:\t3,603,600.00\n", - "2019-11-10 16:33:56.997055\t总成交笔数:\t435\n", - "2019-11-10 16:33:56.997055\t日均盈亏:\t3,780.00\n", - "2019-11-10 16:33:56.998031\t日均手续费:\t0.00\n", - "2019-11-10 16:33:56.999008\t日均滑点:\t0.00\n", - "2019-11-10 16:33:56.999008\t日均成交金额:\t180,180.00\n", - "2019-11-10 16:33:56.999008\t日均成交笔数:\t21.75\n", - "2019-11-10 16:33:56.999008\t日均收益率:\t0.27%\n", - "2019-11-10 16:33:56.999008\t收益标准差:\t0.81%\n", - "2019-11-10 16:33:56.999008\tSharpe Ratio:\t5.20\n", - "2019-11-10 16:33:56.999008\t收益回撤比:\t3.29\n" + "2019-11-14 12:22:16.758224\t开始加载历史数据\n", + "2019-11-14 12:22:20.582443\t历史数据加载完成,数据量:7200\n", + "2019-09-23 11:10:00 long 0.0 -1.6 -1.595771499962582\n", + "2019-09-23 11:22:00 short 0.0 5.0 4.434537272006142\n", + "2019-09-23 11:24:00 short 0.0 5.2 4.9688499583209484\n", + "2019-09-23 11:28:00 long 0.0 -3.8 -3.695330911067618\n", + "2019-09-23 13:25:00 long 0.0 -0.4 -0.23693471309323555\n", + "2019-09-23 13:34:00 long 0.0 -1.8 -1.4179666393179509\n", + "2019-09-23 14:02:00 long 0.0 -0.8 -0.5778248012256164\n", + "2019-09-23 14:04:00 long 0.0 -1.2 -1.1925798475317886\n", + "2019-09-23 14:06:00 long 0.0 -2.0 -1.8379710609249407\n", + "2019-09-23 14:39:00 long 0.0 -2.8 -2.0334313701260256\n", + "2019-09-23 14:43:00 long 0.0 -3.4 -2.787519389787807\n", + "2019-09-23 14:57:00 long 0.0 -5.8 -4.27440470371467\n", + "2019-09-24 10:05:00 long 0.0 -3.8 -3.179999999999999\n", + "2019-09-24 10:06:00 long 0.0 -4.6 -3.857025532524194\n", + "2019-09-24 10:57:00 long 0.0 -5.0 -4.445544546049673\n", + "2019-09-24 11:25:00 short 0.0 3.2 1.6423691723275973\n", + "2019-09-24 13:17:00 long 0.0 -4.0 -3.4607215153133146\n", + "2019-09-24 13:18:00 long 0.0 -4.0 -3.873052190979691\n", + "2019-09-24 13:20:00 short 0.0 1.4 0.6782346393911616\n", + "2019-09-24 13:49:00 long 0.0 -5.6 -4.322203430984213\n", + "2019-09-24 13:51:00 long 0.0 -5.4 -5.351933561796388\n", + "2019-09-24 14:16:00 short 0.0 2.8 2.1558010238906187\n", + "2019-09-24 14:23:00 short 0.0 4.2 4.128626114345908\n", + "2019-09-24 14:34:00 short 0.0 5.6 5.020673910007105\n", + "2019-09-25 10:00:00 long 0.0 -0.8 -0.4674138285233176\n", + "2019-09-25 10:52:00 short 0.0 3.8 3.1140497542965124\n", + "2019-09-25 11:06:00 long 0.0 -5.6 -4.718752682402608\n", + "2019-09-25 11:07:00 long 0.0 -6.8 -5.8570761010398895\n", + "2019-09-25 11:09:00 long 0.0 -9.6 -8.30701394770012\n", + "2019-09-25 13:07:00 long 0.0 -2.4 -2.010688783461635\n", + "2019-09-25 13:09:00 long 0.0 -3.2 -2.9096527568441326\n", + "2019-09-25 13:14:00 long 0.0 -5.8 -4.557175209443296\n", + "2019-09-25 13:16:00 short 0.0 2.8 2.71190168255482\n", + "2019-09-25 13:40:00 short 0.0 3.0 2.393542602265727\n", + "2019-09-25 13:48:00 short 0.0 5.0 3.9270050210519605\n", + "2019-09-25 13:49:00 short 0.0 5.6 4.78127049528201\n", + "2019-09-25 13:50:00 short 0.0 5.8 5.554609072384922\n", + "2019-09-25 14:31:00 long 0.0 -1.8 -1.5605127783747337\n", + "2019-09-25 14:32:00 long 0.0 -3.0 -2.376008752724753\n", + "2019-09-25 14:55:00 short 0.0 2.6 2.088556900684659\n", + "2019-09-26 09:46:00 short 0.0 3.0 2.8147886505838007\n", + "2019-09-26 09:47:00 short 0.0 3.6 3.3125615481131314\n", + "2019-09-26 09:48:00 short 0.0 4.0 3.8584272840510305\n", + "2019-09-26 10:23:00 short 0.0 3.0 2.83069495897579\n", + "2019-09-26 10:24:00 short 0.0 3.6 3.2789686646590304\n", + "2019-09-26 10:46:00 long 0.0 -2.6 -2.146625258399799\n", + "2019-09-26 11:21:00 short 0.0 3.6 2.265894519393671\n", + "2019-09-26 11:22:00 long 0.0 -3.2 -3.114454901417574\n", + "2019-09-26 13:16:00 long 0.0 -2.6 -2.3635511135521776\n", + "2019-09-26 13:18:00 long 0.0 -6.2 -3.9327043465311387\n", + "2019-09-26 13:45:00 short 0.0 3.2 3.0822778379433275\n", + "2019-09-26 14:05:00 short 0.0 3.8 3.35896866465903\n", + "2019-09-26 14:10:00 short 0.0 6.0 4.530235101054467\n", + "2019-09-26 14:27:00 long 0.0 -3.4 -3.05339846006256\n", + "2019-09-27 09:32:00 long 0.0 -3.8 -2.9337158110217847\n", + "2019-09-27 09:51:00 short 0.0 2.8 2.4214462120237066\n", + "2019-09-27 10:12:00 short 0.0 2.0 1.850606004963329\n", + "2019-09-27 10:26:00 long 0.0 -7.0 -5.503958456759911\n", + "2019-09-27 10:27:00 long 0.0 -6.4 -6.098888751680797\n", + "2019-09-27 10:28:00 long 0.0 -8.4 -7.236973076138914\n", + "2019-09-27 11:07:00 short 0.0 1.6 1.5607200579252218\n", + "2019-09-27 11:16:00 long 0.0 -4.0 -3.87369181623589\n", + "2019-09-27 13:08:00 long 0.0 -4.6 -4.461162528784269\n", + "2019-09-27 13:09:00 long 0.0 -5.2 -5.0132355138051565\n", + "2019-09-27 13:23:00 short 0.0 2.0 1.6314853990842237\n", + "2019-09-27 13:47:00 long 0.0 -5.4 -4.616894473211934\n", + "2019-09-27 13:49:00 long 0.0 -5.8 -5.520191631233008\n", + "2019-09-27 14:13:00 short 0.0 1.2 0.35121113065253606\n", + "2019-09-27 14:59:00 long 0.0 -4.0 -3.4791101865742533\n", + "2019-09-30 09:30:00 long 0.0 -4.8 -4.074602650883545\n", + "2019-09-30 09:49:00 long 0.0 -5.8 -5.643996370232946\n", + "2019-09-30 10:11:00 short 0.0 -0.8 -1.357039066464651\n", + "2019-09-30 10:16:00 short 0.0 -0.4 -0.8150054945121012\n", + "2019-09-30 11:17:00 long 0.0 -6.8 -5.732108506679619\n", + "2019-09-30 11:18:00 long 0.0 -8.2 -6.755858900198849\n", + "2019-09-30 13:18:00 long 0.0 -4.4 -4.306701454431009\n", + "2019-09-30 13:28:00 short 0.0 0.2 -0.02641300566843663\n", + "2019-09-30 13:47:00 short 0.0 0.4 0.13580821130503562\n", + "2019-09-30 13:48:00 short 0.0 0.4 0.1881505419127727\n", + "2019-09-30 13:49:00 short 0.0 1.2 0.7885480092693475\n", + "2019-09-30 14:14:00 short 0.0 1.8 1.1255994033242787\n", + "2019-09-30 14:39:00 short 0.0 1.6 1.4130639802964866\n", + "2019-09-30 14:42:00 short 0.0 5.2 3.058708226511668\n", + "2019-09-30 14:56:00 short 0.0 7.0 6.611856732445789\n", + "2019-10-08 09:50:00 long 0.0 -0.8 -0.5042824394129783\n", + "2019-10-08 10:09:00 short 0.0 4.8 4.579714271135537\n", + "2019-10-08 10:15:00 long 0.0 -1.0 -0.9597653330201108\n", + "2019-10-08 11:09:00 short 0.0 5.0 3.4925396619093014\n", + "2019-10-08 13:06:00 short 0.0 4.8 4.353353817434332\n", + "2019-10-08 13:31:00 long 0.0 0.6 0.8356836956703317\n", + "2019-10-08 13:32:00 long 0.0 -0.6 0.23100027793220734\n", + "2019-10-09 09:39:00 short 0.0 3.2 3.020829220946119\n", + "2019-10-09 09:50:00 long 0.0 -1.8 -1.1859802954868088\n", + "2019-10-09 10:11:00 short 0.0 2.0 1.9282856857085695\n", + "2019-10-09 10:27:00 long 0.0 -0.8 -0.7578352176302475\n", + "2019-10-09 10:38:00 long 0.0 -1.4 -1.0869847541280548\n", + "2019-10-09 10:56:00 short 0.0 2.4 2.2773247934811574\n", + "2019-10-09 11:07:00 short 0.0 2.6 2.554598307751914\n", + "2019-10-09 13:00:00 long 0.0 -1.0 -0.23364776376578344\n", + "2019-10-09 13:44:00 long 0.0 -0.6 -0.21029847422132164\n", + "2019-10-09 13:45:00 long 0.0 -0.6 -0.4967498169838851\n", + "2019-10-09 13:55:00 short 0.0 3.0 2.882291367302731\n", + "2019-10-09 14:20:00 short 0.0 1.8 1.370468664200729\n", + "2019-10-09 14:26:00 short 0.0 2.4 1.8891997865528134\n", + "2019-10-09 14:30:00 short 0.0 2.4 2.2919553343687915\n", + "2019-10-10 09:39:00 short 0.0 2.0 1.8236313686219439\n", + "2019-10-10 09:42:00 long 0.0 -1.4 -1.3311813952440235\n", + "2019-10-10 10:18:00 long 0.0 -2.0 -1.9735315156087414\n", + "2019-10-10 10:48:00 short 0.0 1.8 1.7838540758722048\n", + "2019-10-10 11:04:00 long 0.0 -1.4 -1.0303946855997617\n", + "2019-10-10 11:06:00 long 0.0 -1.4 -1.3954486605993353\n", + "2019-10-10 11:17:00 short 0.0 2.2 2.191730976517145\n", + "2019-10-10 13:03:00 long 0.0 -1.2 -1.1912837027615355\n", + "2019-10-10 13:09:00 short 0.0 2.4 2.2715186998758803\n", + "2019-10-10 13:32:00 short 0.0 2.2 1.760985047329109\n", + "2019-10-10 13:59:00 long 0.0 -0.4 -0.34148046676766297\n", + "2019-10-10 14:23:00 long 0.0 -0.4 -0.33726848797845266\n", + "2019-10-10 14:27:00 long 0.0 -0.8 -0.6881176406988356\n", + "2019-10-10 14:28:00 short 0.0 2.0 1.761665591397402\n", + "2019-10-10 14:52:00 short 0.0 3.2 3.1233732527773492\n", + "2019-10-10 14:56:00 long 0.0 0.4 0.4697260530982481\n", + "2019-10-11 09:35:00 short 0.0 4.4 4.158784701647182\n", + "2019-10-11 10:01:00 short 0.0 4.6 4.567844366632624\n", + "2019-10-11 10:06:00 long 0.0 1.0 1.8429751228517368\n", + "2019-10-11 10:07:00 long 0.0 1.4 1.5653746606637924\n", + "2019-10-11 10:55:00 long 0.0 0.2 0.3793872179038522\n", + "2019-10-11 13:27:00 long 0.0 1.2 1.2129834579902017\n", + "2019-10-11 13:28:00 long 0.0 0.4 0.8687937306404183\n", + "2019-10-11 13:30:00 long 0.0 0.4 0.6264684843912596\n", + "2019-10-11 13:31:00 long 0.0 0.2 0.34785878029351336\n", + "2019-10-11 13:38:00 long 0.0 -0.8 -0.46008379692124746\n", + "2019-10-11 14:03:00 short 0.0 3.6 3.3819159132617918\n", + "2019-10-11 14:04:00 short 0.0 3.8 3.654584687293339\n", + "2019-10-11 14:05:00 short 0.0 4.4 4.059545395833821\n", + "2019-10-11 14:09:00 short 0.0 5.6 4.790176984220482\n", + "2019-10-11 14:34:00 long 0.0 -0.6 0.673372549358854\n", + "2019-10-11 14:46:00 long 0.0 0.0 0.07978418103918505\n", + "2019-11-14 12:22:20.696701\t策略初始化完成\n", + "2019-11-14 12:22:20.696701\t开始回放历史数据\n", + "2019-10-14 09:30:00 short 0.0 6.6 5.2771740484728955\n", + "2019-10-14 09:35:00 cover -10 2.6 2.9499999999999997\n", + "2019-10-14 09:51:00 long 0 -2.0 -1.8301008630874136\n", + "2019-10-14 10:01:00 short 0 2.4 2.207898896340853\n", + "2019-10-14 10:03:00 cover -10 -0.2 0.19000000000000025\n", + "2019-10-14 10:04:00 cover -10 -1.0 0.17000000000000023\n", + "2019-10-14 10:05:00 cover -10 -0.6 0.13000000000000023\n", + "2019-10-14 10:21:00 long 0 -2.4 -2.354293492332353\n", + "2019-10-14 10:53:00 long 0 -3.8 -3.2656684389189676\n", + "2019-10-14 11:02:00 long 0 -4.8 -3.983709532096884\n", + "2019-10-14 13:20:00 short 0 1.2 1.1204329970525808\n", + "2019-10-14 13:42:00 short 0 1.0 0.932520022699814\n", + "2019-10-14 13:46:00 cover -10 -0.2 -0.0999999999999995\n", + "2019-10-14 14:01:00 short 0 1.4 1.1046164741766535\n", + "2019-10-14 14:08:00 cover -10 0.2 0.5799999999999997\n", + "2019-10-14 14:12:00 short 0 4.8 3.112579847531794\n", + "2019-10-14 14:19:00 cover -10 0.2 1.3899999999999997\n", + "2019-10-14 14:40:00 long 0 -0.2 -0.1255433615645123\n", + "2019-10-14 14:49:00 sell 10 1.8 0.8400000000000001\n", + "2019-10-14 14:58:00 short 0 2.2 2.0102984742213215\n", + "2019-10-15 09:30:00 cover -10 0.2 0.7899999999999998\n", + "2019-10-15 09:31:00 cover -10 -0.6 0.7099999999999999\n", + "2019-10-15 09:32:00 cover -10 -0.2 0.6699999999999999\n", + "2019-10-15 09:33:00 cover -10 -0.4 0.6099999999999999\n", + "2019-10-15 09:34:00 cover -10 -0.2 0.59\n", + "2019-10-15 09:57:00 short 0 2.8 2.789199786552815\n", + "2019-10-15 10:01:00 cover -10 0.6 1.629999999999999\n", + "2019-10-15 10:05:00 long 0 -0.8 -0.27128370276154\n", + "2019-10-15 10:06:00 sell 10 2.6 1.559999999999999\n", + "2019-10-15 10:27:00 long 0 0.2 0.4168051036812388\n", + "2019-10-15 10:29:00 sell 10 1.4 1.3899999999999992\n", + "2019-10-15 10:40:00 short 0 2.4 2.18319489631876\n", + "2019-10-15 10:47:00 cover -10 1.4 1.4199999999999984\n", + "2019-10-15 11:01:00 long 0 -0.2 -0.03253295216666663\n", + "2019-10-15 11:03:00 sell 10 1.8 1.3599999999999985\n", + "2019-10-15 11:10:00 short 0 2.4 2.3864349160706313\n", + "2019-10-15 11:12:00 cover -10 0.4 1.0999999999999985\n", + "2019-10-15 11:18:00 long 0 -0.6 -0.5886235252742719\n", + "2019-10-15 11:22:00 sell 10 1.0 0.929999999999999\n", + "2019-10-15 13:20:00 long 0 0.2 0.21116886272900737\n", + "2019-10-15 13:30:00 sell 10 0.8 0.7600000000000006\n", + "2019-10-15 13:48:00 long 0 -0.8 -0.5990905331227268\n", + "2019-10-15 13:53:00 sell 10 1.4 0.4400000000000002\n", + "2019-10-15 14:13:00 short 0 1.4 1.3973488065725945\n", + "2019-10-15 14:18:00 cover -10 0.6 0.6600000000000004\n", + "2019-10-15 14:19:00 short 0 1.6 1.597348806572593\n", + "2019-10-15 14:22:00 cover -10 0.8 0.9000000000000001\n", + "2019-10-16 09:30:00 long 0 0.8 0.8607695154586696\n", + "2019-10-16 09:44:00 sell 10 0.8 0.5100000000000003\n", + "2019-10-16 09:55:00 short 0 2.2 1.818799519615618\n", + "2019-10-16 10:02:00 cover -10 0.4 0.9200000000000003\n", + "2019-10-16 10:07:00 short 0 3.0 2.8411253229445754\n", + "2019-10-16 10:15:00 cover -10 1.6 1.6199999999999999\n", + "2019-10-16 10:42:00 short 0 2.2 2.16\n", + "2019-10-16 10:43:00 cover -10 0.6 1.2000000000000002\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2019-10-16 11:03:00 long 0 0.2 0.3184496572199613\n", + "2019-10-16 11:04:00 sell 10 2.0 1.25\n", + "2019-10-16 11:29:00 long 0 0.2 0.3624556746878138\n", + "2019-10-16 13:03:00 sell 10 1.6 1.2700000000000005\n", + "2019-10-16 13:31:00 short 0 4.2 3.535493654014335\n", + "2019-10-16 13:35:00 cover -10 1.8 2.1399999999999997\n", + "2019-10-16 13:52:00 short 0 3.2 2.898489166907174\n", + "2019-10-16 13:53:00 cover -10 0.8 1.339999999999999\n", + "2019-10-16 14:21:00 short 0 3.8 3.130897177907629\n", + "2019-10-16 14:33:00 cover -10 2.8 2.8999999999999995\n", + "2019-10-16 14:42:00 long 0 2.4 2.415591956721122\n", + "2019-10-16 14:47:00 sell 10 3.4 3.35\n", + "2019-10-16 14:55:00 short 0 4.4 4.259999999999998\n", + "2019-10-16 14:59:00 cover -10 2.4 3.18\n", + "2019-10-17 10:03:00 short 0 3.2 3.1397142273814165\n", + "2019-10-17 10:17:00 cover -10 3.4 3.5700000000000003\n", + "2019-10-17 10:23:00 short 0 5.6 5.342577965360736\n", + "2019-10-17 10:27:00 cover -10 4.2 4.420000000000001\n", + "2019-10-17 11:11:00 short 0 6.2 6.088117640698874\n", + "2019-10-17 11:12:00 cover -10 4.6 4.97\n", + "2019-10-17 13:25:00 long 0 4.4 4.578734401160298\n", + "2019-10-17 13:26:00 sell 10 5.6 5.310000000000001\n", + "2019-10-17 13:27:00 short 0 6.2 6.102269383052316\n", + "2019-10-17 13:28:00 cover -10 5.0 5.290000000000001\n", + "2019-10-17 13:31:00 long 0 4.0 4.26585116464987\n", + "2019-10-17 13:35:00 sell 10 5.2 5.1400000000000015\n", + "2019-10-17 13:58:00 short 0 6.0 5.978999374217504\n", + "2019-10-17 14:04:00 cover -10 5.0 5.379999999999999\n", + "2019-10-17 14:13:00 long 0 4.4 4.423853292240882\n", + "2019-10-17 14:15:00 sell 10 5.6 5.459999999999998\n", + "2019-10-17 14:21:00 short 0 7.2 6.941763562443941\n", + "2019-10-17 14:32:00 cover -10 6.4 6.429999999999998\n", + "2019-10-17 14:55:00 long 0 5.0 5.235787635563271\n", + "2019-10-18 09:37:00 sell 10 5.4 5.0600000000000005\n", + "2019-10-18 09:45:00 long 0 2.6 2.7647390801613145\n", + "2019-10-18 09:48:00 sell 10 4.2 4.070000000000001\n", + "2019-10-18 10:22:00 short 0 4.2 4.035759349937911\n", + "2019-10-18 10:32:00 cover -10 3.0 3.280000000000001\n", + "2019-10-18 10:42:00 long 0 2.6 2.6851380485015626\n", + "2019-10-18 10:47:00 sell 10 4.0 3.3900000000000006\n", + "2019-10-18 11:10:00 short 0 3.6 3.3906057825965146\n", + "2019-10-18 11:16:00 cover -10 2.8 3.0300000000000016\n", + "2019-10-18 11:22:00 short 0 4.4 4.277344760741067\n", + "2019-10-18 11:29:00 cover -10 3.0 3.6999999999999984\n", + "2019-10-18 13:17:00 long 0 3.2 3.298149205382897\n", + "2019-10-18 13:20:00 sell 10 5.8 5.079999999999997\n", + "2019-10-18 13:32:00 short 0 6.2 6.165884610812311\n", + "2019-10-18 13:37:00 cover -10 4.0 4.7799999999999985\n", + "2019-10-18 13:51:00 long 0 3.4 3.431323145391513\n", + "2019-10-18 13:52:00 sell 10 5.4 4.94\n", + "2019-10-18 14:54:00 long 0 3.4 3.4202041028867014\n", + "2019-10-18 14:55:00 sell 10 4.8 4.459999999999999\n", + "2019-10-18 14:59:00 short 0 6.0 5.68508215645556\n", + "2019-10-21 09:33:00 cover -10 4.8 4.939999999999999\n", + "2019-10-21 09:45:00 long 0 4.2 4.228357586546087\n", + "2019-10-21 09:52:00 sell 10 6.0 5.489999999999998\n", + "2019-10-21 10:06:00 long 0 4.0 4.077558866185662\n", + "2019-10-21 10:07:00 sell 10 5.2 5.019999999999999\n", + "2019-10-21 10:10:00 short 0 6.2 6.136709128650397\n", + "2019-10-21 10:17:00 cover -10 4.6 5.279999999999999\n", + "2019-10-21 11:14:00 long 0 4.8 4.848413696967212\n", + "2019-10-21 11:15:00 sell 10 6.8 6.140000000000002\n", + "2019-10-21 13:09:00 short 0 7.0 6.82111691323818\n", + "2019-10-21 13:13:00 cover -10 5.4 6.0600000000000005\n", + "2019-10-21 13:24:00 long 0 4.4 4.64626533375276\n", + "2019-10-21 13:25:00 sell 10 6.0 5.940000000000002\n", + "2019-10-21 14:07:00 long 0 4.2 4.267583000760229\n", + "2019-10-21 14:09:00 sell 10 6.0 5.4399999999999995\n", + "2019-10-21 14:12:00 short 0 6.6 6.4214804667676555\n", + "2019-10-21 14:24:00 cover -10 5.4 5.61\n", + "2019-10-21 14:29:00 long 0 4.6 4.810529576736241\n", + "2019-10-21 14:32:00 sell 10 5.8 5.609999999999999\n", + "2019-10-21 14:49:00 short 0 6.0 5.99409198185403\n", + "2019-10-21 14:51:00 cover -10 4.8 5.32\n", + "2019-10-21 14:58:00 long 0 4.6 4.657393131168045\n", + "2019-10-21 14:59:00 sell 10 5.4 5.350000000000001\n", + "2019-10-22 09:32:00 short 0 6.2 6.1212655988396385\n", + "2019-10-22 09:34:00 cover -10 4.8 5.410000000000002\n", + "2019-10-22 09:35:00 long 0 4.4 4.416813910195941\n", + "2019-10-22 09:50:00 sell 10 4.8 4.540000000000001\n", + "2019-10-22 10:06:00 short 0 6.0 5.452567014223348\n", + "2019-10-22 10:09:00 cover -10 4.4 4.469999999999999\n", + "2019-10-22 10:38:00 short 0 5.8 5.406583330077867\n", + "2019-10-22 10:41:00 cover -10 4.2 4.35\n", + "2019-10-22 10:44:00 long 0 3.2 3.2612615615380456\n", + "2019-10-22 10:45:00 sell 10 5.4 4.45\n", + "2019-10-22 11:23:00 short 0 6.8 6.297055636295015\n", + "2019-10-22 11:26:00 cover -10 4.4 4.9\n", + "2019-10-22 13:41:00 short 0 5.8 5.774491659829511\n", + "2019-10-22 13:43:00 cover -10 4.4 5.139999999999998\n", + "2019-10-22 13:46:00 long 0 4.2 4.257350013843572\n", + "2019-10-22 13:48:00 sell 10 5.6 5.089999999999996\n", + "2019-10-22 14:29:00 long 0 3.8 4.001111797830323\n", + "2019-10-22 14:35:00 sell 10 4.8 4.359999999999999\n", + "2019-10-22 14:54:00 long 0 3.2 3.324295126587999\n", + "2019-10-22 14:57:00 sell 10 4.8 4.1899999999999995\n", + "2019-10-23 10:18:00 long 0 3.2 3.2032686114644164\n", + "2019-10-23 10:26:00 sell 10 5.2 3.650000000000001\n", + "2019-10-23 11:00:00 short 0 5.2 4.87331262919987\n", + "2019-10-23 11:01:00 cover -10 3.6 3.81\n", + "2019-10-23 11:20:00 long 0 2.8 2.855450930786114\n", + "2019-10-23 11:22:00 sell 10 4.2 3.79\n", + "2019-10-23 13:14:00 long 0 2.8 2.9081601218103983\n", + "2019-10-23 13:15:00 sell 10 4.0 3.7\n", + "2019-10-23 13:19:00 short 0 4.8 4.717524104363061\n", + "2019-10-23 13:23:00 cover -10 3.4 3.879999999999998\n", + "2019-10-23 13:35:00 long 0 3.4 3.4466933337600034\n", + "2019-10-23 13:36:00 sell 10 4.6 4.3199999999999985\n", + "2019-10-23 13:48:00 long 0 3.0 3.112712164498057\n", + "2019-10-23 13:50:00 sell 10 4.4 4.03\n", + "2019-10-23 13:54:00 short 0 5.0 4.936794863550142\n", + "2019-10-23 13:57:00 cover -10 3.4 3.990000000000003\n", + "2019-10-23 14:00:00 long 0 2.6 2.706953086306418\n", + "2019-10-23 14:05:00 sell 10 4.0 3.820000000000001\n", + "2019-10-23 14:17:00 short 0 4.6 4.529516003089774\n", + "2019-10-23 14:20:00 cover -10 3.2 3.689999999999999\n", + "2019-10-23 14:59:00 short 0 6.6 5.788547536431275\n", + "2019-10-24 09:30:00 cover -10 4.2 4.570000000000001\n", + "2019-10-24 10:20:00 short 0 4.8 4.753229160308103\n", + "2019-10-24 10:23:00 cover -10 4.0 4.019999999999998\n", + "2019-10-24 10:25:00 short 0 5.6 5.199761877760891\n", + "2019-10-24 10:27:00 cover -10 3.6 4.179999999999998\n", + "2019-10-24 10:49:00 long 0 2.6 2.6131527499222917\n", + "2019-10-24 10:52:00 sell 10 4.8 3.6300000000000017\n", + "2019-10-24 11:22:00 short 0 4.4 4.346340792246414\n", + "2019-10-24 11:24:00 cover -10 3.2 3.4599999999999995\n", + "2019-10-24 11:26:00 long 0 2.0 2.34018183321061\n", + "2019-10-24 11:27:00 sell 10 4.6 3.4899999999999998\n", + "2019-10-24 13:02:00 short 0 4.8 4.799999999999999\n", + "2019-10-24 13:07:00 cover -10 3.0 3.7900000000000005\n", + "2019-10-24 13:51:00 long 0 2.8 2.924775479287132\n", + "2019-10-24 13:52:00 sell 10 4.0 3.7799999999999985\n", + "2019-10-25 09:34:00 short 0 4.2 4.025214259481649\n", + "2019-10-25 09:37:00 cover -10 2.4 3.18\n", + "2019-10-25 09:43:00 long 0 1.6 1.9701852010645435\n", + "2019-10-25 09:46:00 sell 10 3.4 3.0599999999999987\n", + "2019-10-25 10:00:00 long 0 1.4 1.4325484065344893\n", + "2019-10-25 10:02:00 sell 10 2.8 2.4800000000000004\n", + "2019-10-25 10:11:00 long 0 0.6 1.1208775307281607\n", + "2019-10-25 10:14:00 sell 10 2.8 2.2500000000000004\n", + "2019-10-25 10:21:00 short 0 3.8 3.6216655913974023\n", + "2019-10-25 10:25:00 cover -10 2.4 2.4899999999999993\n", + "2019-10-25 10:35:00 long 0 1.2 1.6445243830815617\n", + "2019-10-25 10:37:00 sell 10 3.2 2.9399999999999995\n", + "2019-10-25 10:40:00 long 0 1.4 1.454354696878596\n", + "2019-10-25 10:47:00 sell 10 2.6 2.440000000000001\n", + "2019-10-25 11:14:00 short 0 4.8 4.665156893466275\n", + "2019-10-25 11:15:00 cover -10 3.0 3.4600000000000017\n", + "2019-10-25 11:29:00 long 0 1.8 1.9660061349837625\n", + "2019-10-25 13:11:00 sell 10 2.6 2.4800000000000018\n", + "2019-10-25 13:19:00 short 0 3.6 3.356289923765868\n", + "2019-10-25 13:21:00 cover -10 1.6 2.2200000000000024\n", + "2019-10-25 13:29:00 short 0 3.8 3.7998148021117455\n", + "2019-10-25 13:30:00 cover -10 2.2 2.490000000000001\n", + "2019-10-25 13:32:00 short 0 4.2 4.054584687293329\n", + "2019-10-25 13:37:00 cover -10 2.4 2.8700000000000014\n", + "2019-10-25 14:06:00 short 0 5.0 4.652125257065119\n", + "2019-10-25 14:08:00 cover -10 2.6 3.7699999999999982\n", + "2019-10-25 14:59:00 long 0 0.2 0.8383344086026074\n", + "2019-10-28 09:30:00 long 0 -0.4 0.30238264195914666\n", + "2019-10-28 09:42:00 sell 10 0.8 0.6799999999999998\n", + "2019-10-28 09:44:00 sell 10 0.8 0.5399999999999998\n", + "2019-10-28 09:48:00 short 0 1.8 1.746617756902571\n", + "2019-10-28 09:55:00 short 0 2.2 1.8681933110677402\n", + "2019-10-28 10:00:00 cover -10 0.6 0.690000000000002\n", + "2019-10-28 10:12:00 long 0 -1.0 -0.5116936997377782\n", + "2019-10-28 10:14:00 sell 10 1.2 0.7000000000000026\n", + "2019-10-28 10:38:00 short 0 3.4 2.7491067866830154\n", + "2019-10-28 10:40:00 cover -10 1.6 1.7300000000000018\n", + "2019-10-28 10:51:00 short 0 3.4 3.242919797992182\n", + "2019-10-28 10:53:00 cover -10 1.2 1.940000000000002\n", + "2019-10-28 11:25:00 short 0 3.8 3.6886656775464384\n", + "2019-10-28 11:27:00 cover -10 2.0 2.770000000000001\n", + "2019-10-28 13:06:00 long 0 1.2 1.354038835561576\n", + "2019-10-28 13:08:00 sell 10 3.0 2.5400000000000014\n", + "2019-10-28 13:39:00 long 0 0.8 0.8601818332105844\n", + "2019-10-28 13:40:00 sell 10 2.6 1.9799999999999998\n", + "2019-10-28 13:45:00 long 0 0.2 0.49866480257714874\n", + "2019-10-28 13:48:00 sell 10 1.8 1.7499999999999996\n", + "2019-10-28 13:51:00 short 0 3.4 3.3268980203246885\n", + "2019-10-28 13:54:00 cover -10 1.8 1.97\n", + "2019-10-28 14:22:00 short 0 2.8 2.648749021908633\n", + "2019-10-28 14:23:00 cover -10 1.8 1.85\n", + "2019-10-29 09:35:00 short 0 3.0 2.911665016500031\n", + "2019-10-29 09:36:00 cover -10 1.0 2.02\n", + "2019-10-29 09:55:00 short 0 3.0 2.974665715643837\n", + "2019-10-29 09:58:00 cover -10 1.8 2.1199999999999997\n", + "2019-10-29 10:15:00 short 0 3.2 3.1817374897442305\n", + "2019-10-29 10:18:00 cover -10 2.2 2.2800000000000002\n", + "2019-10-29 10:54:00 long 0 1.6 1.82678788880706\n", + "2019-10-29 10:55:00 sell 10 3.0 2.6100000000000003\n", + "2019-10-29 11:10:00 long 0 1.6 1.7152673405477727\n", + "2019-10-29 11:14:00 sell 10 2.8 2.48\n", + "2019-10-29 11:15:00 long 0 1.6 1.6152673405477709\n", + "2019-10-29 11:16:00 sell 10 2.4 2.39\n", + "2019-10-29 11:18:00 short 0 3.6 3.410425435640707\n", + "2019-10-29 11:20:00 cover -10 2.2 2.45\n", + "2019-10-29 13:30:00 short 0 3.8 3.65301697684107\n", + "2019-10-29 13:35:00 cover -10 2.8 2.809999999999999\n", + "2019-10-29 14:11:00 long 0 1.4 1.5328206644528608\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2019-10-29 14:14:00 sell 10 2.8 2.3899999999999997\n", + "2019-10-29 14:40:00 short 0 4.0 3.599719056781405\n", + "2019-10-29 14:42:00 cover -10 2.6 2.7100000000000004\n", + "2019-10-30 09:32:00 long 0 1.4 1.702651193427421\n", + "2019-10-30 09:33:00 sell 10 2.6 2.5500000000000007\n", + "2019-10-30 09:40:00 short 0 3.4 3.2675848040166766\n", + "2019-10-30 09:50:00 cover -10 2.8 2.8599999999999994\n", + "2019-10-30 10:05:00 long 0 2.2 2.233116507008849\n", + "2019-10-30 10:06:00 sell 10 3.4 3.1299999999999994\n", + "2019-10-30 10:15:00 short 0 4.4 3.9870165420097914\n", + "2019-10-30 10:19:00 cover -10 2.8 3.09\n", + "2019-10-30 10:31:00 short 0 5.4 4.915457117137707\n", + "2019-10-30 10:41:00 cover -10 4.0 4.34\n", + "2019-10-30 10:52:00 long 0 3.2 3.2019246599640794\n", + "2019-10-30 11:08:00 sell 10 4.2 3.2299999999999995\n", + "2019-10-30 11:24:00 short 0 4.6 4.327174264961146\n", + "2019-10-30 11:25:00 cover -10 3.2 3.3300000000000005\n", + "2019-10-30 11:26:00 short 0 4.6 4.529233969908972\n", + "2019-10-30 13:00:00 cover -10 2.8 3.5199999999999996\n", + "2019-10-30 13:15:00 short 0 4.8 4.5817661014573865\n", + "2019-10-30 13:27:00 cover -10 3.6 3.8800000000000012\n", + "2019-10-30 13:40:00 short 0 5.4 5.023194896318707\n", + "2019-10-30 13:47:00 cover -10 4.0 4.040000000000001\n", + "2019-10-30 14:46:00 short 0 5.4 5.3579189152169375\n", + "2019-10-30 14:55:00 cover -10 4.4 4.7600000000000025\n", + "2019-10-31 10:54:00 short 0 4.8 4.619647799968375\n", + "2019-10-31 10:55:00 cover -10 3.6 3.879999999999999\n", + "2019-10-31 11:14:00 short 0 5.4 5.07833188405687\n", + "2019-10-31 11:18:00 cover -10 4.2 4.24\n", + "2019-10-31 13:23:00 long 0 2.8 2.8267878888070865\n", + "2019-10-31 13:24:00 sell 10 4.0 3.59\n", + "2019-10-31 13:35:00 short 0 4.4 4.371665016500027\n", + "2019-10-31 13:37:00 cover -10 3.2 3.5199999999999996\n", + "2019-10-31 13:46:00 short 0 4.8 4.632419662491447\n", + "2019-10-31 13:49:00 cover -10 3.6 3.7600000000000002\n", + "2019-10-31 14:31:00 long 0 2.4 2.5361632823094\n", + "2019-10-31 14:33:00 sell 10 3.6 3.2800000000000002\n", + "2019-10-31 14:39:00 short 0 4.4 4.236175168483585\n", + "2019-10-31 14:48:00 cover -10 3.4 3.430000000000002\n", + "2019-10-31 14:59:00 short 0 5.2 4.890464990571925\n", + "2019-11-01 09:30:00 cover -10 3.0 3.950000000000003\n", + "2019-11-01 09:39:00 short 0 5.4 5.271586303032787\n", + "2019-11-01 09:40:00 cover -10 3.6 4.000000000000003\n", + "2019-11-01 10:08:00 short 0 5.4 5.205917366429879\n", + "2019-11-01 10:14:00 cover -10 3.6 4.0600000000000005\n", + "2019-11-01 10:15:00 long 0 2.2 2.5373800224763086\n", + "2019-11-01 10:17:00 sell 10 4.2 3.9799999999999995\n", + "2019-11-01 11:14:00 short 0 4.6 4.574601809837338\n", + "2019-11-01 11:16:00 cover -10 3.8 3.8099999999999987\n", + "2019-11-01 11:20:00 long 0 3.0 3.0100632936747744\n", + "2019-11-01 11:21:00 sell 10 4.0 3.79\n", + "2019-11-01 11:23:00 long 0 2.4 2.7675803375085684\n", + "2019-11-01 11:24:00 sell 10 4.0 3.7600000000000002\n", + "2019-11-01 13:12:00 long 0 1.4 1.876497489474039\n", + "2019-11-01 13:31:00 sell 10 2.6 1.7000000000000004\n", + "2019-11-01 13:53:00 short 0 2.8 2.799019136228547\n", + "2019-11-01 13:57:00 cover -10 1.6 1.8200000000000014\n", + "2019-11-01 14:13:00 short 0 3.4 3.1813199329137047\n", + "2019-11-01 14:16:00 cover -10 1.4 2.080000000000003\n", + "2019-11-01 14:33:00 long 0 1.2 1.4018306305724892\n", + "2019-11-01 14:34:00 sell 10 3.2 2.6800000000000015\n", + "2019-11-01 14:53:00 long 0 0.8 0.8080410967167102\n", + "2019-11-01 14:54:00 sell 10 3.2 1.8300000000000014\n", + "2019-11-04 09:31:00 long 0 0.6 0.600210102581137\n", + "2019-11-04 09:32:00 sell 10 2.6 1.840000000000001\n", + "2019-11-04 09:49:00 short 0 3.4 3.2633137253205806\n", + "2019-11-04 09:52:00 cover -10 2.2 2.21\n", + "2019-11-04 10:38:00 short 0 3.4 3.253984924527946\n", + "2019-11-04 10:39:00 cover -10 2.0 2.01\n", + "2019-11-04 10:53:00 short 0 3.4 3.340578771065301\n", + "2019-11-04 11:02:00 cover -10 2.4 2.7600000000000007\n", + "2019-11-04 11:09:00 long 0 1.8 1.8158994132730166\n", + "2019-11-04 11:12:00 sell 10 3.0 2.8200000000000003\n", + "2019-11-04 11:28:00 short 0 4.0 3.959444312483505\n", + "2019-11-04 11:29:00 cover -10 2.6 2.83\n", + "2019-11-04 13:03:00 short 0 4.2 4.108447236605963\n", + "2019-11-04 13:04:00 cover -10 2.8 2.9500000000000006\n", + "2019-11-04 13:23:00 long 0 2.0 2.037445653886075\n", + "2019-11-04 13:35:00 sell 10 2.4 2.33\n", + "2019-11-04 13:39:00 short 0 3.0 2.864142842854293\n", + "2019-11-04 13:40:00 cover -10 1.8 2.1099999999999994\n", + "2019-11-04 13:43:00 short 0 3.0 2.9727452896155904\n", + "2019-11-04 13:45:00 cover -10 1.8 2.18\n", + "2019-11-04 13:51:00 short 0 3.6 3.2950862032359645\n", + "2019-11-04 13:55:00 cover -10 2.4 2.46\n", + "2019-11-04 14:22:00 long 0 2.2 2.287440098139454\n", + "2019-11-04 14:30:00 sell 10 2.8 2.7899999999999996\n", + "2019-11-04 14:38:00 long 0 1.6 1.6808003202562465\n", + "2019-11-04 14:39:00 sell 10 2.8 2.669999999999999\n", + "2019-11-04 14:59:00 long 0 2.0 2.0013525874952394\n", + "2019-11-05 09:32:00 sell 10 2.8 2.71\n", + "2019-11-05 09:59:00 long 0 1.2 1.210063293674752\n", + "2019-11-05 10:06:00 sell 10 1.8 1.75\n", + "2019-11-05 10:07:00 short 0 2.6 2.5889499366462543\n", + "2019-11-05 10:10:00 cover -10 1.4 1.73\n", + "2019-11-05 10:15:00 short 0 2.8 2.7172299611087896\n", + "2019-11-05 10:17:00 cover -10 1.6 1.7899999999999998\n", + "2019-11-05 10:30:00 short 0 2.8 2.7924354077980764\n", + "2019-11-05 10:32:00 cover -10 1.0 1.9300000000000002\n", + "2019-11-05 11:23:00 long 0 0.0 0.4999999999999971\n", + "2019-11-05 11:26:00 sell 10 2.0 1.6799999999999997\n", + "2019-11-05 14:01:00 short 0 1.2 1.1484355879804886\n", + "2019-11-05 14:02:00 long 0 -0.6 -0.3055342858886768\n", + "2019-11-05 14:03:00 sell 10 0.6 0.43\n", + "2019-11-05 14:12:00 short 0 1.4 1.3687616170334773\n", + "2019-11-05 14:13:00 cover -10 0.2 0.3399999999999999\n", + "2019-11-05 14:26:00 short 0 1.6 1.4303772913449242\n", + "2019-11-05 14:27:00 cover -10 0.4 0.40999999999999936\n", + "2019-11-06 10:02:00 short 0 1.0 0.9707402333838302\n", + "2019-11-06 10:03:00 long 0 -0.2 -0.19827329179203557\n", + "2019-11-06 10:04:00 sell 10 0.8 0.39000000000000135\n", + "2019-11-06 10:06:00 sell 10 1.0 0.39000000000000135\n", + "2019-11-06 10:26:00 short 0 1.8 1.5147184905645277\n", + "2019-11-06 10:34:00 cover -10 0.8 1.110000000000001\n", + "2019-11-06 10:59:00 long 0 -0.4 0.05614169408481229\n", + "2019-11-06 11:01:00 sell 10 1.4 0.9999999999999998\n", + "2019-11-06 11:14:00 short 0 2.2 2.1251568934662934\n", + "2019-11-06 11:16:00 cover -10 0.8 0.8999999999999997\n", + "2019-11-06 13:06:00 long 0 0.0 0.11926861885267015\n", + "2019-11-06 13:08:00 sell 10 1.0 0.8899999999999993\n", + "2019-11-06 13:48:00 short 0 2.2 2.095086203235964\n", + "2019-11-06 13:50:00 cover -10 0.6 1.03\n", + "2019-11-06 14:23:00 short 0 2.2 2.1000000000000023\n", + "2019-11-06 14:28:00 cover -10 0.8 1.2399999999999998\n", + "2019-11-06 14:53:00 short 0 2.8 2.7034813257969215\n", + "2019-11-06 14:54:00 cover -10 1.8 1.8199999999999992\n", + "2019-11-06 14:55:00 short 0 2.8 2.787016542009806\n", + "2019-11-07 09:31:00 cover -10 2.0 2.0699999999999994\n", + "2019-11-07 09:59:00 long 0 0.4 0.4718016229225689\n", + "2019-11-07 10:02:00 sell 10 1.6 1.5199999999999991\n", + "2019-11-07 10:17:00 long 0 0.4 0.4081601218103623\n", + "2019-11-07 10:18:00 sell 10 1.6 1.1800000000000002\n", + "2019-11-07 10:19:00 long 0 0.4 0.4012831066427295\n", + "2019-11-07 10:26:00 sell 10 1.2 0.89\n", + "2019-11-07 10:27:00 short 0 2.2 2.106876171665185\n", + "2019-11-07 10:30:00 cover -10 0.4 0.9899999999999997\n", + "2019-11-07 10:57:00 long 0 0.4 0.4131527499222649\n", + "2019-11-07 11:07:00 sell 10 1.6 1.1799999999999997\n", + "2019-11-07 11:17:00 short 0 2.2 1.909799979995996\n", + "2019-11-07 11:18:00 cover -10 0.8 0.8800000000000002\n", + "2019-11-07 13:09:00 short 0 2.4 2.1073821775254546\n", + "2019-11-07 13:12:00 cover -10 1.0 1.1899999999999993\n", + "2019-11-07 13:59:00 short 0 2.6 2.2587026647662305\n", + "2019-11-07 14:01:00 cover -10 1.0 1.5100000000000002\n", + "2019-11-07 14:23:00 short 0 2.6 2.472745289615583\n", + "2019-11-07 14:24:00 cover -10 1.4 1.6599999999999997\n", + "2019-11-07 14:37:00 long 0 0.6 0.7093184457478421\n", + "2019-11-07 14:43:00 sell 10 1.6 1.3200000000000007\n", + "2019-11-07 14:49:00 short 0 2.0 1.9433923280734922\n", + "2019-11-07 14:54:00 cover -10 0.8 1.200000000000001\n", + "2019-11-07 14:55:00 short 0 2.2 2.1610433579144246\n", + "2019-11-08 09:30:00 cover -10 1.0 1.460000000000001\n", + "2019-11-08 10:16:00 long 0 0.8 0.8150185187725605\n", + "2019-11-08 10:17:00 sell 10 2.2 1.520000000000001\n", + "2019-11-08 10:30:00 long 0 0.2 0.3917025250471836\n", + "2019-11-08 10:31:00 sell 10 2.4 1.41\n", + "2019-11-08 10:51:00 short 0 2.0 1.9047326594522187\n", + "2019-11-08 10:55:00 cover -10 1.2 1.2900000000000003\n", + "2019-11-08 13:00:00 long 0 0.2 0.4043913836341373\n", + "2019-11-08 13:03:00 sell 10 1.8 1.3600000000000003\n", + "2019-11-08 13:30:00 short 0 2.2 2.0201515035589255\n", + "2019-11-08 13:32:00 cover -10 1.0 1.0999999999999999\n", + "2019-11-08 13:44:00 long 0 -0.4 0.0007939009042223777\n", + "2019-11-08 13:45:00 sell 10 1.4 1.2899999999999998\n", + "2019-11-08 14:29:00 long 0 0.8 0.8201695036997836\n", + "2019-11-08 14:30:00 sell 10 2.2 1.9799999999999998\n", + "2019-11-08 14:33:00 sell 10 1.8 1.6599999999999997\n", + "2019-11-08 14:52:00 long 0 0.8 0.8895455886296623\n", + "2019-11-08 14:53:00 sell 10 2.0 1.6699999999999995\n", + "2019-11-14 12:22:21.510177\t历史数据回放结束\n", + "2019-11-14 12:22:21.510177\t开始计算逐日盯市盈亏\n", + "2019-11-14 12:22:21.510177\t逐日盯市盈亏计算完成\n", + "2019-11-14 12:22:21.510177\t开始计算策略统计指标\n", + "2019-11-14 12:22:21.536544\t------------------------------\n", + "2019-11-14 12:22:21.536544\t首个交易日:\t2019-10-14\n", + "2019-11-14 12:22:21.536544\t最后交易日:\t2019-11-08\n", + "2019-11-14 12:22:21.536544\t总交易日:\t20\n", + "2019-11-14 12:22:21.536544\t盈利交易日:\t12\n", + "2019-11-14 12:22:21.536544\t亏损交易日:\t8\n", + "2019-11-14 12:22:21.536544\t起始资金:\t1,000,000.00\n", + "2019-11-14 12:22:21.536544\t结束资金:\t1,065,400.00\n", + "2019-11-14 12:22:21.536544\t总收益率:\t6.54%\n", + "2019-11-14 12:22:21.536544\t年化收益:\t78.48%\n", + "2019-11-14 12:22:21.536544\t最大回撤: \t-24,600.00\n", + "2019-11-14 12:22:21.536544\t百分比最大回撤: -2.31%\n", + "2019-11-14 12:22:21.536544\t最长回撤天数: \t4\n", + "2019-11-14 12:22:21.536544\t总盈亏:\t65,400.00\n", + "2019-11-14 12:22:21.536544\t总手续费:\t0.00\n", + "2019-11-14 12:22:21.536544\t总滑点:\t0.00\n", + "2019-11-14 12:22:21.536544\t总成交金额:\t3,531,000.00\n", + "2019-11-14 12:22:21.536544\t总成交笔数:\t406\n", + "2019-11-14 12:22:21.536544\t日均盈亏:\t3,270.00\n", + "2019-11-14 12:22:21.536544\t日均手续费:\t0.00\n", + "2019-11-14 12:22:21.537521\t日均滑点:\t0.00\n", + "2019-11-14 12:22:21.537521\t日均成交金额:\t176,550.00\n", + "2019-11-14 12:22:21.537521\t日均成交笔数:\t20.3\n", + "2019-11-14 12:22:21.537521\t日均收益率:\t0.26%\n", + "2019-11-14 12:22:21.537521\t收益标准差:\t0.76%\n", + "2019-11-14 12:22:21.537521\tSharpe Ratio:\t5.29\n", + "2019-11-14 12:22:21.537521\t收益回撤比:\t2.83\n" ] }, { @@ -118,7 +691,7 @@ }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnUAAAOSCAYAAAASwSbaAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzs3Xl8lNXZ//HPZF9IAgkhCVtYAieBgCiyyaogi6Vq8We1tbVqK9q6PK1a9XFr7YNVq9W61RbcaOvSum8NIpsgLtiISmA4QNiXJJAA2deZ3x8zQEyBLCSZzOT7fr3yysw919xz3Qdmcs2573OOw+12IyIiIiL+LcjXCYiIiIjIqVNRJyIiIhIAVNSJiIiIBAAVdSIiIiIBQEWdiIiISABQUSciIiISAEJ8nYCISFswxvQDcoF13k3BQDlwk7V29Ume9wKQY619uK1zFBFpTSrqRCSQVVhrRxy5Y4z5PvACMMhnGYmItBEVdSLSmSQA+4wxQcCjwFggBnAAP2vYg2eMuQq4BggD4oEHrLVPG2OuAL4HuPAUiOXAT6y1TmNMMvAXIN37+F+stY8bY+KAx4BhQCiwFPi1tba2jY9ZRDoJXVMnIoEs0hjzlfdnB56i6n5gDNATGGetHQIsBG6v/0RjTBfgauA8a+3pwCXAH+qFTAZusNZmAp/Xe/6fgU3W2nRgHDDXGJOGp4jMttaOBE4HugM3tcVBi0jnpJ46EQlkDU+/TgPewtNbdhdwjTFmIDAFKKn/RGttqTFmNvAdY8wgYATQpV5ItrV2t/f2l8Ac7+1pwK3efRwGMr2vPRsYbYz5qTcusrUOUkQE1FMnIp2ItXYJsAWYBLzv3fw2ntOljvqxxpjewFdAKvAxniKwvop6t931nl/rvX9kPwOMMbF4BmpcbK0d4S00xwDXt8JhiYgAKupEpBMxxgwG+uE5lfqutfZp4D/AhXiKrvrOBPYD84DFwGzvPhrGNbQEuNIbG4fn2rlBwAfAr4wxDmNMOPAOKupEpBXp9KuIBLJIY8xX9e4HAXOBb4CXjTHr8HwOLgYu8g6gOGIxcBVg8Qx4+AhPkZfWyGteDzxtjPnG+3r3W2uzjTE34rmmbx2egRJL+PY1eiIip8ThdrsbjxIRERGRDk2nX0VEREQCgIo6ERERkQCgok5EREQkAKioExEREQkAKupEREREAkBATmny1VdfucPDw32dRodQVVWF2qJtqY3bntq4faidj1FbtD218THl5eUHRo4cmXiq+wnIoi48PJyMjAxfp9EhOJ1OtUUbUxu3PbVx+1A7H6O2aHtq42Oys7N3tMZ+dPpVREREJACoqBMREREJACrqRERERAJAQF5Tdzw1NTXs3r2byspKX6fSrmpqanA6nSd8PCIigt69exMaGtqOWYmIiEhr6zRF3e7du4mJiaFfv344HA5fp9NuKioqiIyMPO5jbrebwsJCdu/eTf/+/ds5MxEREWlNneb0a2VlJQkJCZ2qoGuMw+EgISGh0/VeioiIdBTVta5W21en6akDVNAdh9pERESkfR2uqGGpM5+snDxWbtrPS9/r0Sr77VRFna+98cYbbN26lVtuueWkcZ9//jmvvPIKjz76aDtlJiIiIm2psLSKDzd4CrlPcg9QU+cmJS6CH4zuC7TOGTMVdSIiIiJtIL+4kg/W55G1Lo/PtxXickPf+CiuGt+fmZnJnNa7K0FBDrKzs1vl9VTUtbOvvvqKn/zkJ5SWlnLDDTdQWVnJiy++ePTxxx577Fvx//jHP1i8eDG1tbXExMTwxBNP8N577/HRRx9RWVnJzp07ufrqq5kzZw5ff/019913H263m6SkJB5++GE2b97MQw89BEDXrl35/e9/T0xMTLses4iISGex+2A5i3LyyMrJ48udB3G7Ia1HF647O42ZmckMSYlts0ufOmVR93r2bv71n12tus/vn9mHi0b2bjQuMjKS+fPnU1RUxMUXX8z3v/995s+fT2RkJPfccw8ff/wxSUlJALhcLg4dOsQLL7xAUFAQP/3pT1m3bh0ApaWlPPvss2zfvp1rr72WOXPmcPfdd/Poo48ycOBAXnzxRXJzc/nd737HAw88QFpaGq+++irPPPMMv/rVr1r12EVERDqzrftLycrJY1FOHuv2HAYgIyWWX00bzKzMZAYltU9nSqcs6nxp5MiRR0edxsTEEBISwm233UZ0dDRbt25lxIgRR2ODgoIIDQ3lpptuIioqiry8PGprawFIT08HICUlherqagAKCwsZOHAgAJdddhkA27Zt49577wU8c9Zp6hIREZFT43a7sfklZK3zFHI2vwSA0/p05fZZ6czKTCY1Ibrd8+qURd1FI3s3qVetLRzpadu/fz8lJSUsXLiQ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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -141,7 +714,9 @@ { "cell_type": "code", "execution_count": 5, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [ { "name": "stdout", @@ -149,439 +724,410 @@ "text": [ "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='1', tradeid='1', direction=, offset=, price=5.0, volume=10, time='09:31:00')\n", "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='2', tradeid='2', direction=, offset=, price=2.0, volume=10, time='09:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='3', tradeid='3', direction=, offset=, price=0.2, volume=10, time='09:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='4', tradeid='4', direction=, offset=, price=2.4, volume=10, time='10:01:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='5', tradeid='5', direction=, offset=, price=0.2, volume=10, time='10:02:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='6', tradeid='6', direction=, offset=, price=0.2, volume=10, time='10:06:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='7', tradeid='7', direction=, offset=, price=0.2, volume=10, time='10:06:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='8', tradeid='8', direction=, offset=, price=0.2, volume=10, time='10:06:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='9', tradeid='9', direction=, offset=, price=0.6, volume=20, time='10:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='10', tradeid='10', direction=, offset=, price=0.2, volume=10, time='10:29:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='11', tradeid='11', direction=, offset=, price=0.2, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='12', tradeid='12', direction=, offset=, price=0.2, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='13', tradeid='13', direction=, offset=, price=0.2, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='14', tradeid='14', direction=, offset=, price=0.2, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='15', tradeid='15', direction=, offset=, price=0.2, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='16', tradeid='16', direction=, offset=, price=0.2, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='17', tradeid='17', direction=, offset=, price=0.2, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='18', tradeid='18', direction=, offset=, price=0.8, volume=60, time='10:47:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='19', tradeid='19', direction=, offset=, price=0.8, volume=10, time='10:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='20', tradeid='20', direction=, offset=, price=0.6, volume=10, time='10:58:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='21', tradeid='21', direction=, offset=, price=0.6, volume=10, time='10:58:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='22', tradeid='22', direction=, offset=, price=0.4, volume=10, time='11:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='23', tradeid='23', direction=, offset=, price=0.4, volume=10, time='11:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='24', tradeid='24', direction=, offset=, price=0.4, volume=10, time='11:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='25', tradeid='25', direction=, offset=, price=1.8, volume=20, time='11:08:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='26', tradeid='26', direction=, offset=, price=0.4, volume=10, time='13:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='27', tradeid='27', direction=, offset=, price=0.2, volume=10, time='13:26:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='28', tradeid='28', direction=, offset=, price=0.4, volume=10, time='13:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='29', tradeid='29', direction=, offset=, price=0.6, volume=10, time='13:47:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='30', tradeid='30', direction=, offset=, price=1.6, volume=10, time='14:02:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='31', tradeid='31', direction=, offset=, price=0.6, volume=10, time='14:09:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='32', tradeid='32', direction=, offset=, price=1.2, volume=10, time='14:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='33', tradeid='33', direction=, offset=, price=1.0, volume=10, time='14:20:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='34', tradeid='34', direction=, offset=, price=1.0, volume=10, time='14:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='35', tradeid='35', direction=, offset=, price=0.8, volume=10, time='14:50:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='36', tradeid='36', direction=, offset=, price=3.0, volume=10, time='14:59:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='37', tradeid='37', direction=, offset=, price=0.2, volume=10, time='09:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='38', tradeid='38', direction=, offset=, price=0.2, volume=10, time='09:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='39', tradeid='39', direction=, offset=, price=0.2, volume=10, time='09:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='40', tradeid='40', direction=, offset=, price=0.2, volume=10, time='09:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='41', tradeid='41', direction=, offset=, price=0.2, volume=10, time='09:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='42', tradeid='42', direction=, offset=, price=0.6, volume=40, time='09:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='43', tradeid='43', direction=, offset=, price=2.8, volume=10, time='09:58:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='44', tradeid='44', direction=, offset=, price=2.0, volume=10, time='10:02:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='45', tradeid='45', direction=, offset=, price=2.6, volume=10, time='10:06:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='46', tradeid='46', direction=, offset=, price=2.2, volume=10, time='10:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='47', tradeid='47', direction=, offset=, price=0.8, volume=10, time='10:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='48', tradeid='48', direction=, offset=, price=1.8, volume=10, time='10:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='49', tradeid='49', direction=, offset=, price=1.2, volume=10, time='10:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='50', tradeid='50', direction=, offset=, price=2.6, volume=10, time='10:48:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='51', tradeid='51', direction=, offset=, price=0.4, volume=10, time='11:02:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='52', tradeid='52', direction=, offset=, price=1.2, volume=10, time='11:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='53', tradeid='53', direction=, offset=, price=1.4, volume=10, time='11:11:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='54', tradeid='54', direction=, offset=, price=0.4, volume=10, time='11:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='55', tradeid='55', direction=, offset=, price=0.4, volume=10, time='11:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='56', tradeid='56', direction=, offset=, price=1.2, volume=10, time='11:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='57', tradeid='57', direction=, offset=, price=0.8, volume=10, time='13:21:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='58', tradeid='58', direction=, offset=, price=1.4, volume=10, time='13:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='59', tradeid='59', direction=, offset=, price=0.2, volume=10, time='13:49:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='60', tradeid='60', direction=, offset=, price=0.6, volume=10, time='13:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='61', tradeid='61', direction=, offset=, price=0.8, volume=10, time='14:14:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='62', tradeid='62', direction=, offset=, price=1.6, volume=10, time='14:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='63', tradeid='63', direction=, offset=, price=2.2, volume=10, time='14:20:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='64', tradeid='64', direction=, offset=, price=1.2, volume=10, time='14:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='65', tradeid='65', direction=, offset=, price=0.8, volume=10, time='09:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='66', tradeid='66', direction=, offset=, price=0.8, volume=10, time='09:45:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='67', tradeid='67', direction=, offset=, price=1.8, volume=10, time='09:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='68', tradeid='68', direction=, offset=, price=0.2, volume=10, time='10:03:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='69', tradeid='69', direction=, offset=, price=2.8, volume=10, time='10:08:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='70', tradeid='70', direction=, offset=, price=0.8, volume=10, time='10:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='71', tradeid='71', direction=, offset=, price=0.6, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='72', tradeid='72', direction=, offset=, price=0.8, volume=10, time='10:44:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='73', tradeid='73', direction=, offset=, price=2.0, volume=10, time='11:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='74', tradeid='74', direction=, offset=, price=1.2, volume=10, time='11:05:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='75', tradeid='75', direction=, offset=, price=0.6, volume=10, time='13:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='76', tradeid='76', direction=, offset=, price=1.4, volume=10, time='13:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='77', tradeid='77', direction=, offset=, price=2.8, volume=10, time='13:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='78', tradeid='78', direction=, offset=, price=0.8, volume=10, time='13:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='79', tradeid='79', direction=, offset=, price=0.8, volume=10, time='13:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='80', tradeid='80', direction=, offset=, price=2.4, volume=10, time='13:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='81', tradeid='81', direction=, offset=, price=3.6, volume=10, time='14:22:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='82', tradeid='82', direction=, offset=, price=4.4, volume=10, time='14:34:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='83', tradeid='83', direction=, offset=, price=3.0, volume=10, time='14:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='84', tradeid='84', direction=, offset=, price=2.8, volume=10, time='14:48:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='85', tradeid='85', direction=, offset=, price=3.6, volume=10, time='14:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='86', tradeid='86', direction=, offset=, price=2.8, volume=10, time='09:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='87', tradeid='87', direction=, offset=, price=3.2, volume=10, time='10:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='88', tradeid='88', direction=, offset=, price=4.0, volume=10, time='10:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='89', tradeid='89', direction=, offset=, price=5.0, volume=10, time='10:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='90', tradeid='90', direction=, offset=, price=5.2, volume=10, time='10:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='91', tradeid='91', direction=, offset=, price=4.6, volume=10, time='11:12:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='92', tradeid='92', direction=, offset=, price=5.6, volume=10, time='11:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='93', tradeid='93', direction=, offset=, price=5.6, volume=10, time='13:26:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='94', tradeid='94', direction=, offset=, price=6.2, volume=10, time='13:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='95', tradeid='95', direction=, offset=, price=5.0, volume=10, time='13:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='96', tradeid='96', direction=, offset=, price=4.8, volume=10, time='13:29:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='97', tradeid='97', direction=, offset=, price=4.2, volume=10, time='13:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='98', tradeid='98', direction=, offset=, price=5.6, volume=10, time='13:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='99', tradeid='99', direction=, offset=, price=5.8, volume=10, time='13:59:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='100', tradeid='100', direction=, offset=, price=6.0, volume=10, time='14:05:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='101', tradeid='101', direction=, offset=, price=4.6, volume=10, time='14:14:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='102', tradeid='102', direction=, offset=, price=5.0, volume=10, time='14:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='103', tradeid='103', direction=, offset=, price=7.0, volume=10, time='14:22:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='104', tradeid='104', direction=, offset=, price=6.6, volume=10, time='14:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='105', tradeid='105', direction=, offset=, price=5.6, volume=10, time='14:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='106', tradeid='106', direction=, offset=, price=4.0, volume=10, time='09:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='107', tradeid='107', direction=, offset=, price=3.8, volume=10, time='09:46:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='108', tradeid='108', direction=, offset=, price=3.6, volume=10, time='09:49:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='109', tradeid='109', direction=, offset=, price=3.4, volume=10, time='10:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='110', tradeid='110', direction=, offset=, price=3.8, volume=10, time='10:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='111', tradeid='111', direction=, offset=, price=2.6, volume=10, time='10:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='112', tradeid='112', direction=, offset=, price=4.0, volume=10, time='10:48:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='113', tradeid='113', direction=, offset=, price=3.4, volume=10, time='11:11:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='114', tradeid='114', direction=, offset=, price=3.4, volume=10, time='11:17:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='115', tradeid='115', direction=, offset=, price=4.0, volume=10, time='11:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='116', tradeid='116', direction=, offset=, price=5.2, volume=10, time='13:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='117', tradeid='117', direction=, offset=, price=4.6, volume=10, time='13:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='118', tradeid='118', direction=, offset=, price=5.0, volume=10, time='13:21:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='119', tradeid='119', direction=, offset=, price=6.0, volume=10, time='13:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='120', tradeid='120', direction=, offset=, price=5.8, volume=10, time='13:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='121', tradeid='121', direction=, offset=, price=5.4, volume=10, time='13:52:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='122', tradeid='122', direction=, offset=, price=4.8, volume=10, time='13:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='123', tradeid='123', direction=, offset=, price=4.8, volume=10, time='14:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='124', tradeid='124', direction=, offset=, price=4.2, volume=10, time='14:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='125', tradeid='125', direction=, offset=, price=6.6, volume=10, time='09:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='126', tradeid='126', direction=, offset=, price=5.8, volume=10, time='09:34:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='127', tradeid='127', direction=, offset=, price=4.8, volume=10, time='09:46:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='128', tradeid='128', direction=, offset=, price=5.6, volume=10, time='09:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='129', tradeid='129', direction=, offset=, price=5.2, volume=10, time='10:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='130', tradeid='130', direction=, offset=, price=5.0, volume=10, time='10:08:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='131', tradeid='131', direction=, offset=, price=6.4, volume=10, time='10:11:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='132', tradeid='132', direction=, offset=, price=5.8, volume=10, time='10:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='133', tradeid='133', direction=, offset=, price=6.8, volume=10, time='11:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='134', tradeid='134', direction=, offset=, price=5.8, volume=10, time='11:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='135', tradeid='135', direction=, offset=, price=6.4, volume=10, time='13:10:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='136', tradeid='136', direction=, offset=, price=5.6, volume=10, time='13:14:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='137', tradeid='137', direction=, offset=, price=6.0, volume=10, time='13:25:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='138', tradeid='138', direction=, offset=, price=6.6, volume=10, time='13:26:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='139', tradeid='139', direction=, offset=, price=4.8, volume=10, time='14:08:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='140', tradeid='140', direction=, offset=, price=5.2, volume=10, time='14:10:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='141', tradeid='141', direction=, offset=, price=5.6, volume=10, time='14:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='142', tradeid='142', direction=, offset=, price=5.6, volume=10, time='14:25:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='143', tradeid='143', direction=, offset=, price=5.2, volume=10, time='14:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='144', tradeid='144', direction=, offset=, price=4.8, volume=10, time='14:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='145', tradeid='145', direction=, offset=, price=5.6, volume=10, time='14:50:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='146', tradeid='146', direction=, offset=, price=5.6, volume=10, time='14:52:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='147', tradeid='147', direction=, offset=, price=5.4, volume=10, time='14:59:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='148', tradeid='148', direction=, offset=, price=5.2, volume=10, time='09:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='149', tradeid='149', direction=, offset=, price=6.2, volume=10, time='09:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='150', tradeid='150', direction=, offset=, price=4.4, volume=10, time='09:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='151', tradeid='151', direction=, offset=, price=4.6, volume=10, time='09:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='152', tradeid='152', direction=, offset=, price=4.6, volume=10, time='09:51:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='153', tradeid='153', direction=, offset=, price=4.8, volume=10, time='10:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='154', tradeid='154', direction=, offset=, price=4.2, volume=10, time='10:10:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='155', tradeid='155', direction=, offset=, price=4.4, volume=10, time='10:39:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='156', tradeid='156', direction=, offset=, price=4.4, volume=10, time='10:42:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='157', tradeid='157', direction=, offset=, price=5.4, volume=10, time='10:45:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='158', tradeid='158', direction=, offset=, price=4.4, volume=10, time='10:46:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='159', tradeid='159', direction=, offset=, price=5.0, volume=10, time='11:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='160', tradeid='160', direction=, offset=, price=5.2, volume=10, time='11:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='161', tradeid='161', direction=, offset=, price=5.2, volume=10, time='13:42:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='162', tradeid='162', direction=, offset=, price=4.8, volume=10, time='13:44:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='163', tradeid='163', direction=, offset=, price=4.8, volume=10, time='13:47:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='164', tradeid='164', direction=, offset=, price=4.8, volume=10, time='13:49:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='165', tradeid='165', direction=, offset=, price=2.2, volume=10, time='14:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='166', tradeid='166', direction=, offset=, price=4.6, volume=10, time='14:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='167', tradeid='167', direction=, offset=, price=3.4, volume=10, time='14:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='168', tradeid='168', direction=, offset=, price=4.2, volume=10, time='14:58:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='169', tradeid='169', direction=, offset=, price=3.2, volume=10, time='10:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='170', tradeid='170', direction=, offset=, price=3.6, volume=10, time='10:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='171', tradeid='171', direction=, offset=, price=3.6, volume=10, time='11:01:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='172', tradeid='172', direction=, offset=, price=3.6, volume=10, time='11:02:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='173', tradeid='173', direction=, offset=, price=3.4, volume=10, time='11:21:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='174', tradeid='174', direction=, offset=, price=4.0, volume=10, time='11:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='175', tradeid='175', direction=, offset=, price=4.0, volume=10, time='13:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='176', tradeid='176', direction=, offset=, price=3.8, volume=10, time='13:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='177', tradeid='177', direction=, offset=, price=4.4, volume=10, time='13:20:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='178', tradeid='178', direction=, offset=, price=4.8, volume=10, time='13:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='179', tradeid='179', direction=, offset=, price=4.6, volume=10, time='13:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='180', tradeid='180', direction=, offset=, price=3.4, volume=10, time='13:37:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='181', tradeid='181', direction=, offset=, price=3.6, volume=10, time='13:49:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='182', tradeid='182', direction=, offset=, price=3.4, volume=10, time='13:51:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='183', tradeid='183', direction=, offset=, price=5.0, volume=10, time='13:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='184', tradeid='184', direction=, offset=, price=3.6, volume=10, time='13:58:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='185', tradeid='185', direction=, offset=, price=3.4, volume=10, time='14:01:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='186', tradeid='186', direction=, offset=, price=4.4, volume=10, time='14:06:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='187', tradeid='187', direction=, offset=, price=3.6, volume=10, time='14:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='188', tradeid='188', direction=, offset=, price=4.2, volume=10, time='14:21:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='189', tradeid='189', direction=, offset=, price=4.2, volume=10, time='09:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='190', tradeid='190', direction=, offset=, price=3.4, volume=10, time='09:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='191', tradeid='191', direction=, offset=, price=4.8, volume=10, time='10:21:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='192', tradeid='192', direction=, offset=, price=4.0, volume=10, time='10:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='193', tradeid='193', direction=, offset=, price=4.6, volume=10, time='10:26:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='194', tradeid='194', direction=, offset=, price=4.2, volume=10, time='10:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='195', tradeid='195', direction=, offset=, price=3.6, volume=10, time='10:50:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='196', tradeid='196', direction=, offset=, price=3.4, volume=10, time='10:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='197', tradeid='197', direction=, offset=, price=3.6, volume=10, time='11:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='198', tradeid='198', direction=, offset=, price=4.2, volume=10, time='11:25:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='199', tradeid='199', direction=, offset=, price=4.6, volume=10, time='11:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='200', tradeid='200', direction=, offset=, price=3.8, volume=10, time='11:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='201', tradeid='201', direction=, offset=, price=3.8, volume=10, time='13:03:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='202', tradeid='202', direction=, offset=, price=3.4, volume=10, time='13:08:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='203', tradeid='203', direction=, offset=, price=4.0, volume=10, time='13:52:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='204', tradeid='204', direction=, offset=, price=3.0, volume=10, time='13:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='205', tradeid='205', direction=, offset=, price=3.6, volume=10, time='09:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='206', tradeid='206', direction=, offset=, price=2.8, volume=10, time='09:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='207', tradeid='207', direction=, offset=, price=2.8, volume=10, time='09:44:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='208', tradeid='208', direction=, offset=, price=2.6, volume=10, time='09:47:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='209', tradeid='209', direction=, offset=, price=2.2, volume=10, time='10:01:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='210', tradeid='210', direction=, offset=, price=2.0, volume=10, time='10:03:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='211', tradeid='211', direction=, offset=, price=2.0, volume=10, time='10:12:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='212', tradeid='212', direction=, offset=, price=1.6, volume=10, time='10:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='213', tradeid='213', direction=, offset=, price=3.4, volume=10, time='10:22:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='214', tradeid='214', direction=, offset=, price=3.6, volume=10, time='10:26:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='215', tradeid='215', direction=, offset=, price=2.4, volume=10, time='10:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='216', tradeid='216', direction=, offset=, price=2.2, volume=10, time='10:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='217', tradeid='217', direction=, offset=, price=2.4, volume=10, time='10:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='218', tradeid='218', direction=, offset=, price=1.8, volume=10, time='10:48:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='219', tradeid='219', direction=, offset=, price=3.0, volume=10, time='11:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='220', tradeid='220', direction=, offset=, price=3.2, volume=10, time='11:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='221', tradeid='221', direction=, offset=, price=2.6, volume=10, time='13:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='222', tradeid='222', direction=, offset=, price=2.6, volume=10, time='13:12:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='223', tradeid='223', direction=, offset=, price=2.4, volume=10, time='13:20:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='224', tradeid='224', direction=, offset=, price=3.0, volume=10, time='13:22:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='225', tradeid='225', direction=, offset=, price=2.2, volume=10, time='13:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='226', tradeid='226', direction=, offset=, price=2.8, volume=10, time='13:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='227', tradeid='227', direction=, offset=, price=3.6, volume=10, time='13:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='228', tradeid='228', direction=, offset=, price=3.6, volume=10, time='13:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='229', tradeid='229', direction=, offset=, price=5.2, volume=10, time='14:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='230', tradeid='230', direction=, offset=, price=3.6, volume=10, time='14:09:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='231', tradeid='231', direction=, offset=, price=1.8, volume=10, time='09:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='232', tradeid='232', direction=, offset=, price=1.8, volume=10, time='09:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='233', tradeid='233', direction=, offset=, price=0.8, volume=20, time='09:44:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='234', tradeid='234', direction=, offset=, price=0.4, volume=10, time='09:50:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='235', tradeid='235', direction=, offset=, price=0.6, volume=10, time='10:01:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='236', tradeid='236', direction=, offset=, price=0.4, volume=10, time='10:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='237', tradeid='237', direction=, offset=, price=1.2, volume=10, time='10:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='238', tradeid='238', direction=, offset=, price=2.0, volume=10, time='10:39:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='239', tradeid='239', direction=, offset=, price=1.0, volume=10, time='10:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='240', tradeid='240', direction=, offset=, price=2.8, volume=10, time='10:52:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='241', tradeid='241', direction=, offset=, price=1.6, volume=10, time='10:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='242', tradeid='242', direction=, offset=, price=3.0, volume=10, time='11:26:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='243', tradeid='243', direction=, offset=, price=3.2, volume=10, time='11:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='244', tradeid='244', direction=, offset=, price=1.4, volume=10, time='13:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='245', tradeid='245', direction=, offset=, price=2.8, volume=10, time='13:09:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='246', tradeid='246', direction=, offset=, price=2.6, volume=10, time='13:40:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='247', tradeid='247', direction=, offset=, price=1.6, volume=10, time='13:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='248', tradeid='248', direction=, offset=, price=1.4, volume=10, time='13:46:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='249', tradeid='249', direction=, offset=, price=2.6, volume=10, time='13:49:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='250', tradeid='250', direction=, offset=, price=3.0, volume=10, time='13:52:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='251', tradeid='251', direction=, offset=, price=3.4, volume=10, time='13:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='252', tradeid='252', direction=, offset=, price=1.8, volume=10, time='14:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='253', tradeid='253', direction=, offset=, price=2.6, volume=10, time='14:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='254', tradeid='254', direction=, offset=, price=1.0, volume=10, time='09:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='255', tradeid='255', direction=, offset=, price=2.2, volume=10, time='09:37:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='256', tradeid='256', direction=, offset=, price=2.2, volume=10, time='09:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='257', tradeid='257', direction=, offset=, price=1.8, volume=10, time='09:59:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='258', tradeid='258', direction=, offset=, price=2.4, volume=10, time='10:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='259', tradeid='259', direction=, offset=, price=2.6, volume=10, time='10:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='260', tradeid='260', direction=, offset=, price=3.0, volume=10, time='10:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='261', tradeid='261', direction=, offset=, price=2.8, volume=10, time='10:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='262', tradeid='262', direction=, offset=, price=2.0, volume=10, time='11:11:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='263', tradeid='263', direction=, offset=, price=1.6, volume=10, time='11:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='264', tradeid='264', direction=, offset=, price=2.4, volume=10, time='11:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='265', tradeid='265', direction=, offset=, price=2.8, volume=10, time='11:17:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='266', tradeid='266', direction=, offset=, price=2.8, volume=10, time='11:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='267', tradeid='267', direction=, offset=, price=2.0, volume=10, time='11:21:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='268', tradeid='268', direction=, offset=, price=2.8, volume=10, time='13:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='269', tradeid='269', direction=, offset=, price=3.0, volume=10, time='13:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='270', tradeid='270', direction=, offset=, price=2.4, volume=10, time='14:12:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='271', tradeid='271', direction=, offset=, price=2.0, volume=10, time='14:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='272', tradeid='272', direction=, offset=, price=2.8, volume=10, time='14:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='273', tradeid='273', direction=, offset=, price=2.6, volume=10, time='14:43:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='274', tradeid='274', direction=, offset=, price=2.6, volume=10, time='09:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='275', tradeid='275', direction=, offset=, price=2.0, volume=10, time='09:34:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='276', tradeid='276', direction=, offset=, price=3.8, volume=10, time='09:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='277', tradeid='277', direction=, offset=, price=3.6, volume=10, time='09:51:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='278', tradeid='278', direction=, offset=, price=3.4, volume=10, time='10:06:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='279', tradeid='279', direction=, offset=, price=2.8, volume=10, time='10:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='280', tradeid='280', direction=, offset=, price=3.6, volume=10, time='10:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='281', tradeid='281', direction=, offset=, price=3.2, volume=10, time='10:20:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='282', tradeid='282', direction=, offset=, price=4.6, volume=10, time='10:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='283', tradeid='283', direction=, offset=, price=4.2, volume=10, time='10:42:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='284', tradeid='284', direction=, offset=, price=3.4, volume=10, time='10:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='285', tradeid='285', direction=, offset=, price=2.8, volume=10, time='11:09:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='286', tradeid='286', direction=, offset=, price=3.2, volume=10, time='11:25:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='287', tradeid='287', direction=, offset=, price=4.6, volume=10, time='11:26:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='288', tradeid='288', direction=, offset=, price=3.8, volume=10, time='11:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='289', tradeid='289', direction=, offset=, price=3.4, volume=10, time='13:01:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='290', tradeid='290', direction=, offset=, price=4.0, volume=10, time='13:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='291', tradeid='291', direction=, offset=, price=3.6, volume=10, time='13:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='292', tradeid='292', direction=, offset=, price=4.2, volume=10, time='13:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='293', tradeid='293', direction=, offset=, price=4.2, volume=10, time='13:48:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='294', tradeid='294', direction=, offset=, price=4.6, volume=10, time='14:47:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='295', tradeid='295', direction=, offset=, price=4.4, volume=10, time='14:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='296', tradeid='296', direction=, offset=, price=3.6, volume=10, time='10:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='297', tradeid='297', direction=, offset=, price=4.2, volume=10, time='10:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='298', tradeid='298', direction=, offset=, price=4.2, volume=10, time='11:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='299', tradeid='299', direction=, offset=, price=4.2, volume=10, time='11:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='300', tradeid='300', direction=, offset=, price=4.0, volume=10, time='13:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='301', tradeid='301', direction=, offset=, price=3.6, volume=10, time='13:25:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='302', tradeid='302', direction=, offset=, price=3.6, volume=10, time='13:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='303', tradeid='303', direction=, offset=, price=4.4, volume=10, time='13:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='304', tradeid='304', direction=, offset=, price=3.8, volume=10, time='13:47:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='305', tradeid='305', direction=, offset=, price=3.2, volume=10, time='13:50:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='306', tradeid='306', direction=, offset=, price=2.8, volume=10, time='14:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='307', tradeid='307', direction=, offset=, price=2.8, volume=10, time='14:34:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='308', tradeid='308', direction=, offset=, price=4.6, volume=10, time='14:40:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='309', tradeid='309', direction=, offset=, price=4.2, volume=10, time='14:49:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='310', tradeid='310', direction=, offset=, price=3.0, volume=10, time='09:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='311', tradeid='311', direction=, offset=, price=4.0, volume=10, time='09:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='312', tradeid='312', direction=, offset=, price=3.6, volume=10, time='09:40:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='313', tradeid='313', direction=, offset=, price=4.2, volume=10, time='09:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='314', tradeid='314', direction=, offset=, price=4.2, volume=10, time='10:09:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='315', tradeid='315', direction=, offset=, price=2.2, volume=10, time='10:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='316', tradeid='316', direction=, offset=, price=3.6, volume=10, time='10:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='317', tradeid='317', direction=, offset=, price=4.2, volume=10, time='10:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='318', tradeid='318', direction=, offset=, price=4.2, volume=10, time='11:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='319', tradeid='319', direction=, offset=, price=4.2, volume=10, time='11:17:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='320', tradeid='320', direction=, offset=, price=4.0, volume=10, time='11:21:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='321', tradeid='321', direction=, offset=, price=3.6, volume=10, time='11:22:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='322', tradeid='322', direction=, offset=, price=4.0, volume=10, time='11:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='323', tradeid='323', direction=, offset=, price=3.6, volume=10, time='11:25:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='324', tradeid='324', direction=, offset=, price=2.8, volume=10, time='13:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='325', tradeid='325', direction=, offset=, price=2.4, volume=10, time='13:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='326', tradeid='326', direction=, offset=, price=2.2, volume=10, time='13:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='327', tradeid='327', direction=, offset=, price=3.0, volume=10, time='13:58:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='328', tradeid='328', direction=, offset=, price=2.2, volume=10, time='14:14:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='329', tradeid='329', direction=, offset=, price=3.2, volume=10, time='14:17:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='330', tradeid='330', direction=, offset=, price=3.2, volume=10, time='14:34:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='331', tradeid='331', direction=, offset=, price=1.6, volume=10, time='14:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='332', tradeid='332', direction=, offset=, price=3.2, volume=10, time='14:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='333', tradeid='333', direction=, offset=, price=1.4, volume=10, time='14:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='334', tradeid='334', direction=, offset=, price=2.6, volume=10, time='09:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='335', tradeid='335', direction=, offset=, price=1.6, volume=10, time='09:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='336', tradeid='336', direction=, offset=, price=2.6, volume=10, time='09:50:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='337', tradeid='337', direction=, offset=, price=2.2, volume=10, time='09:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='338', tradeid='338', direction=, offset=, price=2.0, volume=10, time='10:39:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='339', tradeid='339', direction=, offset=, price=1.6, volume=10, time='10:40:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='340', tradeid='340', direction=, offset=, price=3.0, volume=10, time='10:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='341', tradeid='341', direction=, offset=, price=3.2, volume=10, time='11:03:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='342', tradeid='342', direction=, offset=, price=2.0, volume=10, time='11:10:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='343', tradeid='343', direction=, offset=, price=2.8, volume=10, time='11:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='344', tradeid='344', direction=, offset=, price=2.6, volume=10, time='11:29:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='345', tradeid='345', direction=, offset=, price=2.6, volume=10, time='13:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='346', tradeid='346', direction=, offset=, price=2.8, volume=10, time='13:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='347', tradeid='347', direction=, offset=, price=3.2, volume=10, time='13:05:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='348', tradeid='348', direction=, offset=, price=1.8, volume=10, time='13:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='349', tradeid='349', direction=, offset=, price=2.6, volume=10, time='13:36:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='350', tradeid='350', direction=, offset=, price=1.8, volume=10, time='13:40:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='351', tradeid='351', direction=, offset=, price=2.4, volume=10, time='13:41:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='352', tradeid='352', direction=, offset=, price=2.2, volume=10, time='13:44:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='353', tradeid='353', direction=, offset=, price=2.4, volume=10, time='13:46:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='354', tradeid='354', direction=, offset=, price=3.6, volume=10, time='13:52:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='355', tradeid='355', direction=, offset=, price=2.6, volume=10, time='13:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='356', tradeid='356', direction=, offset=, price=2.8, volume=10, time='14:23:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='357', tradeid='357', direction=, offset=, price=3.0, volume=10, time='14:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='358', tradeid='358', direction=, offset=, price=2.8, volume=10, time='14:39:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='359', tradeid='359', direction=, offset=, price=2.6, volume=10, time='14:40:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='360', tradeid='360', direction=, offset=, price=2.4, volume=10, time='09:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='361', tradeid='361', direction=, offset=, price=2.4, volume=10, time='09:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='362', tradeid='362', direction=, offset=, price=1.2, volume=10, time='10:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='363', tradeid='363', direction=, offset=, price=2.6, volume=10, time='10:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='364', tradeid='364', direction=, offset=, price=1.8, volume=10, time='10:08:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='365', tradeid='365', direction=, offset=, price=1.8, volume=10, time='10:11:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='366', tradeid='366', direction=, offset=, price=1.8, volume=10, time='10:16:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='367', tradeid='367', direction=, offset=, price=1.8, volume=10, time='10:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='368', tradeid='368', direction=, offset=, price=2.2, volume=10, time='10:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='369', tradeid='369', direction=, offset=, price=1.2, volume=10, time='10:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='370', tradeid='370', direction=, offset=, price=0.8, volume=10, time='11:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='371', tradeid='371', direction=, offset=, price=1.2, volume=10, time='11:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='372', tradeid='372', direction=, offset=, price=0.6, volume=10, time='14:03:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='373', tradeid='373', direction=, offset=, price=0.6, volume=10, time='14:03:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='374', tradeid='374', direction=, offset=, price=0.2, volume=10, time='14:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='375', tradeid='375', direction=, offset=, price=0.2, volume=10, time='14:14:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='376', tradeid='376', direction=, offset=, price=0.4, volume=10, time='14:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='377', tradeid='377', direction=, offset=, price=1.4, volume=10, time='14:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='378', tradeid='378', direction=, offset=, price=0.8, volume=10, time='10:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='379', tradeid='379', direction=, offset=, price=0.8, volume=10, time='10:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='380', tradeid='380', direction=, offset=, price=1.6, volume=10, time='10:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='381', tradeid='381', direction=, offset=, price=0.8, volume=10, time='10:35:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='382', tradeid='382', direction=, offset=, price=0.2, volume=10, time='11:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='383', tradeid='383', direction=, offset=, price=1.0, volume=10, time='11:02:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='384', tradeid='384', direction=, offset=, price=1.2, volume=10, time='11:15:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='385', tradeid='385', direction=, offset=, price=1.2, volume=10, time='11:17:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='386', tradeid='386', direction=, offset=, price=0.4, volume=10, time='13:07:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='387', tradeid='387', direction=, offset=, price=0.4, volume=10, time='13:09:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='388', tradeid='388', direction=, offset=, price=1.2, volume=10, time='13:49:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='389', tradeid='389', direction=, offset=, price=0.6, volume=10, time='13:51:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='390', tradeid='390', direction=, offset=, price=1.6, volume=10, time='14:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='391', tradeid='391', direction=, offset=, price=0.6, volume=10, time='14:29:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='392', tradeid='392', direction=, offset=, price=1.8, volume=10, time='14:54:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='393', tradeid='393', direction=, offset=, price=2.8, volume=10, time='14:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='394', tradeid='394', direction=, offset=, price=2.6, volume=10, time='14:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='395', tradeid='395', direction=, offset=, price=1.6, volume=10, time='09:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='396', tradeid='396', direction=, offset=, price=1.2, volume=10, time='10:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='397', tradeid='397', direction=, offset=, price=1.4, volume=10, time='10:03:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='398', tradeid='398', direction=, offset=, price=1.6, volume=10, time='10:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='399', tradeid='399', direction=, offset=, price=0.4, volume=10, time='10:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='400', tradeid='400', direction=, offset=, price=0.2, volume=10, time='10:20:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='401', tradeid='401', direction=, offset=, price=2.2, volume=10, time='10:27:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='402', tradeid='402', direction=, offset=, price=1.6, volume=10, time='10:28:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='403', tradeid='403', direction=, offset=, price=1.0, volume=10, time='10:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='404', tradeid='404', direction=, offset=, price=1.4, volume=10, time='10:58:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='405', tradeid='405', direction=, offset=, price=1.0, volume=10, time='11:08:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='406', tradeid='406', direction=, offset=, price=0.8, volume=10, time='11:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='407', tradeid='407', direction=, offset=, price=0.4, volume=10, time='11:19:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='408', tradeid='408', direction=, offset=, price=2.0, volume=10, time='13:10:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='409', tradeid='409', direction=, offset=, price=1.2, volume=10, time='13:13:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='410', tradeid='410', direction=, offset=, price=2.4, volume=10, time='14:00:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='411', tradeid='411', direction=, offset=, price=0.8, volume=10, time='14:02:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='412', tradeid='412', direction=, offset=, price=1.4, volume=10, time='14:24:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='413', tradeid='413', direction=, offset=, price=1.4, volume=10, time='14:25:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='414', tradeid='414', direction=, offset=, price=1.0, volume=10, time='14:38:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='415', tradeid='415', direction=, offset=, price=1.0, volume=10, time='14:44:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='416', tradeid='416', direction=, offset=, price=1.6, volume=10, time='14:50:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='417', tradeid='417', direction=, offset=, price=2.2, volume=10, time='14:55:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='418', tradeid='418', direction=, offset=, price=2.2, volume=10, time='14:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='419', tradeid='419', direction=, offset=, price=1.0, volume=10, time='09:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='420', tradeid='420', direction=, offset=, price=2.2, volume=10, time='10:17:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='421', tradeid='421', direction=, offset=, price=1.0, volume=10, time='10:18:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='422', tradeid='422', direction=, offset=, price=2.4, volume=10, time='10:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='423', tradeid='423', direction=, offset=, price=0.6, volume=10, time='10:32:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='424', tradeid='424', direction=, offset=, price=2.0, volume=10, time='10:52:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='425', tradeid='425', direction=, offset=, price=1.0, volume=10, time='10:56:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='426', tradeid='426', direction=, offset=, price=0.8, volume=10, time='13:01:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='427', tradeid='427', direction=, offset=, price=1.4, volume=10, time='13:04:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='428', tradeid='428', direction=, offset=, price=1.8, volume=10, time='13:31:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='429', tradeid='429', direction=, offset=, price=0.8, volume=10, time='13:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='430', tradeid='430', direction=, offset=, price=1.4, volume=10, time='13:45:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='431', tradeid='431', direction=, offset=, price=1.0, volume=10, time='13:46:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='432', tradeid='432', direction=, offset=, price=2.2, volume=10, time='14:30:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='433', tradeid='433', direction=, offset=, price=1.8, volume=10, time='14:33:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='434', tradeid='434', direction=, offset=, price=2.0, volume=10, time='14:53:00')\n", - "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='435', tradeid='435', direction=, offset=, price=2.0, volume=10, time='14:54:00')\n" + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='4', tradeid='3', direction=, offset=, price=0.2, volume=10, time='10:02:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='7', tradeid='4', direction=, offset=, price=0.2, volume=10, time='10:06:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='12', tradeid='5', direction=, offset=, price=0.4, volume=10, time='13:43:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='13', tradeid='6', direction=, offset=, price=0.6, volume=10, time='13:47:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='14', tradeid='7', direction=, offset=, price=1.6, volume=10, time='14:02:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='15', tradeid='8', direction=, offset=, price=0.6, volume=10, time='14:09:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='16', tradeid='9', direction=, offset=, price=1.2, volume=10, time='14:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='17', tradeid='10', direction=, offset=, price=1.0, volume=10, time='14:20:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='18', tradeid='11', direction=, offset=, price=1.0, volume=10, time='14:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='19', tradeid='12', direction=, offset=, price=0.8, volume=10, time='14:50:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='20', tradeid='13', direction=, offset=, price=3.0, volume=10, time='14:59:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='25', tradeid='14', direction=, offset=, price=0.2, volume=10, time='09:35:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='26', tradeid='15', direction=, offset=, price=2.8, volume=10, time='09:58:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='27', tradeid='16', direction=, offset=, price=2.0, volume=10, time='10:02:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='28', tradeid='17', direction=, offset=, price=2.6, volume=10, time='10:06:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='29', tradeid='18', direction=, offset=, price=2.2, volume=10, time='10:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='30', tradeid='19', direction=, offset=, price=0.8, volume=10, time='10:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='31', tradeid='20', direction=, offset=, price=1.8, volume=10, time='10:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='32', tradeid='21', direction=, offset=, price=1.2, volume=10, time='10:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='33', tradeid='22', direction=, offset=, price=2.6, volume=10, time='10:48:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='34', tradeid='23', direction=, offset=, price=0.4, volume=10, time='11:02:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='35', tradeid='24', direction=, offset=, price=1.2, volume=10, time='11:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='36', tradeid='25', direction=, offset=, price=1.4, volume=10, time='11:11:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='37', tradeid='26', direction=, offset=, price=0.4, volume=10, time='11:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='38', tradeid='27', direction=, offset=, price=0.4, volume=10, time='11:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='39', tradeid='28', direction=, offset=, price=1.2, volume=10, time='11:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='40', tradeid='29', direction=, offset=, price=0.8, volume=10, time='13:21:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='41', tradeid='30', direction=, offset=, price=1.4, volume=10, time='13:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='42', tradeid='31', direction=, offset=, price=0.2, volume=10, time='13:49:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='43', tradeid='32', direction=, offset=, price=0.6, volume=10, time='13:54:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='44', tradeid='33', direction=, offset=, price=0.8, volume=10, time='14:14:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='45', tradeid='34', direction=, offset=, price=1.6, volume=10, time='14:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='46', tradeid='35', direction=, offset=, price=2.2, volume=10, time='14:20:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='47', tradeid='36', direction=, offset=, price=1.2, volume=10, time='14:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='48', tradeid='37', direction=, offset=, price=0.8, volume=10, time='09:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='49', tradeid='38', direction=, offset=, price=0.8, volume=10, time='09:45:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='50', tradeid='39', direction=, offset=, price=1.8, volume=10, time='09:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='51', tradeid='40', direction=, offset=, price=0.2, volume=10, time='10:03:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='52', tradeid='41', direction=, offset=, price=2.8, volume=10, time='10:08:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='53', tradeid='42', direction=, offset=, price=0.8, volume=10, time='10:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='54', tradeid='43', direction=, offset=, price=0.6, volume=10, time='10:43:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='55', tradeid='44', direction=, offset=, price=0.8, volume=10, time='10:44:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='56', tradeid='45', direction=, offset=, price=2.0, volume=10, time='11:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='57', tradeid='46', direction=, offset=, price=1.2, volume=10, time='11:05:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='58', tradeid='47', direction=, offset=, price=0.6, volume=10, time='13:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='59', tradeid='48', direction=, offset=, price=1.4, volume=10, time='13:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='60', tradeid='49', direction=, offset=, price=2.8, volume=10, time='13:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='61', tradeid='50', direction=, offset=, price=0.8, volume=10, time='13:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='62', tradeid='51', direction=, offset=, price=0.8, volume=10, time='13:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='63', tradeid='52', direction=, offset=, price=2.4, volume=10, time='13:54:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='64', tradeid='53', direction=, offset=, price=3.6, volume=10, time='14:22:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='65', tradeid='54', direction=, offset=, price=4.4, volume=10, time='14:34:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='66', tradeid='55', direction=, offset=, price=3.0, volume=10, time='14:43:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='67', tradeid='56', direction=, offset=, price=2.8, volume=10, time='14:48:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='68', tradeid='57', direction=, offset=, price=3.6, volume=10, time='14:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='69', tradeid='58', direction=, offset=, price=2.8, volume=10, time='09:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='70', tradeid='59', direction=, offset=, price=3.2, volume=10, time='10:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='71', tradeid='60', direction=, offset=, price=4.0, volume=10, time='10:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='72', tradeid='61', direction=, offset=, price=5.0, volume=10, time='10:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='73', tradeid='62', direction=, offset=, price=5.2, volume=10, time='10:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='74', tradeid='63', direction=, offset=, price=4.6, volume=10, time='11:12:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='75', tradeid='64', direction=, offset=, price=5.6, volume=10, time='11:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='76', tradeid='65', direction=, offset=, price=5.6, volume=10, time='13:26:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='77', tradeid='66', direction=, offset=, price=6.2, volume=10, time='13:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='78', tradeid='67', direction=, offset=, price=5.0, volume=10, time='13:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='79', tradeid='68', direction=, offset=, price=4.8, volume=10, time='13:29:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='80', tradeid='69', direction=, offset=, price=4.2, volume=10, time='13:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='81', tradeid='70', direction=, offset=, price=5.6, volume=10, time='13:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='82', tradeid='71', direction=, offset=, price=5.8, volume=10, time='13:59:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='83', tradeid='72', direction=, offset=, price=6.0, volume=10, time='14:05:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='84', tradeid='73', direction=, offset=, price=4.6, volume=10, time='14:14:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='85', tradeid='74', direction=, offset=, price=5.0, volume=10, time='14:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='86', tradeid='75', direction=, offset=, price=7.0, volume=10, time='14:22:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='87', tradeid='76', direction=, offset=, price=6.6, volume=10, time='14:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='88', tradeid='77', direction=, offset=, price=5.6, volume=10, time='14:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='89', tradeid='78', direction=, offset=, price=4.0, volume=10, time='09:38:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='90', tradeid='79', direction=, offset=, price=3.8, volume=10, time='09:46:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='91', tradeid='80', direction=, offset=, price=3.6, volume=10, time='09:49:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='92', tradeid='81', direction=, offset=, price=3.4, volume=10, time='10:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='93', tradeid='82', direction=, offset=, price=3.8, volume=10, time='10:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='94', tradeid='83', direction=, offset=, price=2.6, volume=10, time='10:43:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='95', tradeid='84', direction=, offset=, price=4.0, volume=10, time='10:48:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='96', tradeid='85', direction=, offset=, price=3.4, volume=10, time='11:11:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='97', tradeid='86', direction=, offset=, price=3.4, volume=10, time='11:17:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='98', tradeid='87', direction=, offset=, price=4.0, volume=10, time='11:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='99', tradeid='88', direction=, offset=, price=5.2, volume=10, time='13:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='100', tradeid='89', direction=, offset=, price=4.6, volume=10, time='13:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='101', tradeid='90', direction=, offset=, price=5.0, volume=10, time='13:21:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='102', tradeid='91', direction=, offset=, price=6.0, volume=10, time='13:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='103', tradeid='92', direction=, offset=, price=5.8, volume=10, time='13:38:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='104', tradeid='93', direction=, offset=, price=5.4, volume=10, time='13:52:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='105', tradeid='94', direction=, offset=, price=4.8, volume=10, time='13:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='106', tradeid='95', direction=, offset=, price=4.8, volume=10, time='14:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='107', tradeid='96', direction=, offset=, price=4.2, volume=10, time='14:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='108', tradeid='97', direction=, offset=, price=6.6, volume=10, time='09:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='109', tradeid='98', direction=, offset=, price=5.8, volume=10, time='09:34:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='110', tradeid='99', direction=, offset=, price=4.8, volume=10, time='09:46:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='111', tradeid='100', direction=, offset=, price=5.6, volume=10, time='09:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='112', tradeid='101', direction=, offset=, price=5.2, volume=10, time='10:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='113', tradeid='102', direction=, offset=, price=5.0, volume=10, time='10:08:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='114', tradeid='103', direction=, offset=, price=6.4, volume=10, time='10:11:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='115', tradeid='104', direction=, offset=, price=5.8, volume=10, time='10:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='116', tradeid='105', direction=, offset=, price=6.8, volume=10, time='11:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='117', tradeid='106', direction=, offset=, price=5.8, volume=10, time='11:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='118', tradeid='107', direction=, offset=, price=6.4, volume=10, time='13:10:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='119', tradeid='108', direction=, offset=, price=5.6, volume=10, time='13:14:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='120', tradeid='109', direction=, offset=, price=6.0, volume=10, time='13:25:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='121', tradeid='110', direction=, offset=, price=6.6, volume=10, time='13:26:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='122', tradeid='111', direction=, offset=, price=4.8, volume=10, time='14:08:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='123', tradeid='112', direction=, offset=, price=5.2, volume=10, time='14:10:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='124', tradeid='113', direction=, offset=, price=5.6, volume=10, time='14:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='125', tradeid='114', direction=, offset=, price=5.6, volume=10, time='14:25:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='126', tradeid='115', direction=, offset=, price=5.2, volume=10, time='14:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='127', tradeid='116', direction=, offset=, price=4.8, volume=10, time='14:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='128', tradeid='117', direction=, offset=, price=5.6, volume=10, time='14:50:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='129', tradeid='118', direction=, offset=, price=5.6, volume=10, time='14:52:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='130', tradeid='119', direction=, offset=, price=5.4, volume=10, time='14:59:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='131', tradeid='120', direction=, offset=, price=5.2, volume=10, time='09:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='132', tradeid='121', direction=, offset=, price=6.2, volume=10, time='09:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='133', tradeid='122', direction=, offset=, price=4.4, volume=10, time='09:35:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='134', tradeid='123', direction=, offset=, price=4.6, volume=10, time='09:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='135', tradeid='124', direction=, offset=, price=4.6, volume=10, time='09:51:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='136', tradeid='125', direction=, offset=, price=4.8, volume=10, time='10:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='137', tradeid='126', direction=, offset=, price=4.2, volume=10, time='10:10:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='138', tradeid='127', direction=, offset=, price=4.4, volume=10, time='10:39:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='139', tradeid='128', direction=, offset=, price=4.4, volume=10, time='10:42:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='140', tradeid='129', direction=, offset=, price=5.4, volume=10, time='10:45:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='141', tradeid='130', direction=, offset=, price=4.4, volume=10, time='10:46:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='142', tradeid='131', direction=, offset=, price=5.0, volume=10, time='11:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='143', tradeid='132', direction=, offset=, price=5.2, volume=10, time='11:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='144', tradeid='133', direction=, offset=, price=5.2, volume=10, time='13:42:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='145', tradeid='134', direction=, offset=, price=4.8, volume=10, time='13:44:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='146', tradeid='135', direction=, offset=, price=4.8, volume=10, time='13:47:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='147', tradeid='136', direction=, offset=, price=4.8, volume=10, time='13:49:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='148', tradeid='137', direction=, offset=, price=2.2, volume=10, time='14:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='149', tradeid='138', direction=, offset=, price=4.6, volume=10, time='14:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='150', tradeid='139', direction=, offset=, price=3.4, volume=10, time='14:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='151', tradeid='140', direction=, offset=, price=4.2, volume=10, time='14:58:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='152', tradeid='141', direction=, offset=, price=3.2, volume=10, time='10:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='153', tradeid='142', direction=, offset=, price=3.6, volume=10, time='10:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='154', tradeid='143', direction=, offset=, price=3.6, volume=10, time='11:01:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='155', tradeid='144', direction=, offset=, price=3.6, volume=10, time='11:02:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='156', tradeid='145', direction=, offset=, price=3.4, volume=10, time='11:21:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='157', tradeid='146', direction=, offset=, price=4.0, volume=10, time='11:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='158', tradeid='147', direction=, offset=, price=4.0, volume=10, time='13:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='159', tradeid='148', direction=, offset=, price=3.8, volume=10, time='13:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='160', tradeid='149', direction=, offset=, price=4.4, volume=10, time='13:20:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='161', tradeid='150', direction=, offset=, price=4.8, volume=10, time='13:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='162', tradeid='151', direction=, offset=, price=4.6, volume=10, time='13:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='163', tradeid='152', direction=, offset=, price=3.4, volume=10, time='13:37:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='164', tradeid='153', direction=, offset=, price=3.6, volume=10, time='13:49:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='165', tradeid='154', direction=, offset=, price=3.4, volume=10, time='13:51:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='166', tradeid='155', direction=, offset=, price=5.0, volume=10, time='13:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='167', tradeid='156', direction=, offset=, price=3.6, volume=10, time='13:58:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='168', tradeid='157', direction=, offset=, price=3.4, volume=10, time='14:01:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='169', tradeid='158', direction=, offset=, price=4.4, volume=10, time='14:06:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='170', tradeid='159', direction=, offset=, price=3.6, volume=10, time='14:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='171', tradeid='160', direction=, offset=, price=4.2, volume=10, time='14:21:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='172', tradeid='161', direction=, offset=, price=4.2, volume=10, time='09:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='173', tradeid='162', direction=, offset=, price=3.4, volume=10, time='09:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='174', tradeid='163', direction=, offset=, price=4.8, volume=10, time='10:21:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='175', tradeid='164', direction=, offset=, price=4.0, volume=10, time='10:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='176', tradeid='165', direction=, offset=, price=4.6, volume=10, time='10:26:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='177', tradeid='166', direction=, offset=, price=4.2, volume=10, time='10:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='178', tradeid='167', direction=, offset=, price=3.6, volume=10, time='10:50:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='179', tradeid='168', direction=, offset=, price=3.4, volume=10, time='10:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='180', tradeid='169', direction=, offset=, price=3.6, volume=10, time='11:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='181', tradeid='170', direction=, offset=, price=4.2, volume=10, time='11:25:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='182', tradeid='171', direction=, offset=, price=4.6, volume=10, time='11:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='183', tradeid='172', direction=, offset=, price=3.8, volume=10, time='11:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='184', tradeid='173', direction=, offset=, price=3.8, volume=10, time='13:03:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='185', tradeid='174', direction=, offset=, price=3.4, volume=10, time='13:08:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='186', tradeid='175', direction=, offset=, price=4.0, volume=10, time='13:52:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='187', tradeid='176', direction=, offset=, price=3.0, volume=10, time='13:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='188', tradeid='177', direction=, offset=, price=3.6, volume=10, time='09:35:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='189', tradeid='178', direction=, offset=, price=2.8, volume=10, time='09:38:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='190', tradeid='179', direction=, offset=, price=2.8, volume=10, time='09:44:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='191', tradeid='180', direction=, offset=, price=2.6, volume=10, time='09:47:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='192', tradeid='181', direction=, offset=, price=2.2, volume=10, time='10:01:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='193', tradeid='182', direction=, offset=, price=2.0, volume=10, time='10:03:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='194', tradeid='183', direction=, offset=, price=2.0, volume=10, time='10:12:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='195', tradeid='184', direction=, offset=, price=1.6, volume=10, time='10:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='196', tradeid='185', direction=, offset=, price=3.4, volume=10, time='10:22:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='197', tradeid='186', direction=, offset=, price=3.6, volume=10, time='10:26:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='198', tradeid='187', direction=, offset=, price=2.4, volume=10, time='10:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='199', tradeid='188', direction=, offset=, price=2.2, volume=10, time='10:38:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='200', tradeid='189', direction=, offset=, price=2.4, volume=10, time='10:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='201', tradeid='190', direction=, offset=, price=1.8, volume=10, time='10:48:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='202', tradeid='191', direction=, offset=, price=3.0, volume=10, time='11:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='203', tradeid='192', direction=, offset=, price=3.2, volume=10, time='11:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='204', tradeid='193', direction=, offset=, price=2.6, volume=10, time='13:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='205', tradeid='194', direction=, offset=, price=2.6, volume=10, time='13:12:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='206', tradeid='195', direction=, offset=, price=2.4, volume=10, time='13:20:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='207', tradeid='196', direction=, offset=, price=3.0, volume=10, time='13:22:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='208', tradeid='197', direction=, offset=, price=2.2, volume=10, time='13:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='209', tradeid='198', direction=, offset=, price=2.8, volume=10, time='13:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='210', tradeid='199', direction=, offset=, price=3.6, volume=10, time='13:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='211', tradeid='200', direction=, offset=, price=3.6, volume=10, time='13:38:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='212', tradeid='201', direction=, offset=, price=5.2, volume=10, time='14:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='213', tradeid='202', direction=, offset=, price=3.6, volume=10, time='14:09:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='215', tradeid='203', direction=, offset=, price=1.8, volume=10, time='09:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='217', tradeid='204', direction=, offset=, price=0.2, volume=10, time='09:45:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='219', tradeid='205', direction=, offset=, price=1.0, volume=10, time='09:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='220', tradeid='206', direction=, offset=, price=0.6, volume=10, time='10:01:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='221', tradeid='207', direction=, offset=, price=0.4, volume=10, time='10:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='222', tradeid='208', direction=, offset=, price=1.2, volume=10, time='10:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='223', tradeid='209', direction=, offset=, price=2.0, volume=10, time='10:39:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='224', tradeid='210', direction=, offset=, price=1.0, volume=10, time='10:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='225', tradeid='211', direction=, offset=, price=2.8, volume=10, time='10:52:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='226', tradeid='212', direction=, offset=, price=1.6, volume=10, time='10:54:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='227', tradeid='213', direction=, offset=, price=3.0, volume=10, time='11:26:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='228', tradeid='214', direction=, offset=, price=3.2, volume=10, time='11:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='229', tradeid='215', direction=, offset=, price=1.4, volume=10, time='13:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='230', tradeid='216', direction=, offset=, price=2.8, volume=10, time='13:09:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='231', tradeid='217', direction=, offset=, price=2.6, volume=10, time='13:40:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='232', tradeid='218', direction=, offset=, price=1.6, volume=10, time='13:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='233', tradeid='219', direction=, offset=, price=1.4, volume=10, time='13:46:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='234', tradeid='220', direction=, offset=, price=2.6, volume=10, time='13:49:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='235', tradeid='221', direction=, offset=, price=3.0, volume=10, time='13:52:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='236', tradeid='222', direction=, offset=, price=3.4, volume=10, time='13:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='237', tradeid='223', direction=, offset=, price=1.8, volume=10, time='14:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='238', tradeid='224', direction=, offset=, price=2.6, volume=10, time='14:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='239', tradeid='225', direction=, offset=, price=1.0, volume=10, time='09:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='240', tradeid='226', direction=, offset=, price=2.2, volume=10, time='09:37:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='241', tradeid='227', direction=, offset=, price=2.2, volume=10, time='09:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='242', tradeid='228', direction=, offset=, price=1.8, volume=10, time='09:59:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='243', tradeid='229', direction=, offset=, price=2.4, volume=10, time='10:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='244', tradeid='230', direction=, offset=, price=2.6, volume=10, time='10:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='245', tradeid='231', direction=, offset=, price=3.0, volume=10, time='10:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='246', tradeid='232', direction=, offset=, price=2.8, volume=10, time='10:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='247', tradeid='233', direction=, offset=, price=2.0, volume=10, time='11:11:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='248', tradeid='234', direction=, offset=, price=1.6, volume=10, time='11:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='249', tradeid='235', direction=, offset=, price=2.4, volume=10, time='11:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='250', tradeid='236', direction=, offset=, price=2.8, volume=10, time='11:17:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='251', tradeid='237', direction=, offset=, price=2.8, volume=10, time='11:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='252', tradeid='238', direction=, offset=, price=2.0, volume=10, time='11:21:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='253', tradeid='239', direction=, offset=, price=2.8, volume=10, time='13:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='254', tradeid='240', direction=, offset=, price=3.0, volume=10, time='13:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='255', tradeid='241', direction=, offset=, price=2.4, volume=10, time='14:12:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='256', tradeid='242', direction=, offset=, price=2.0, volume=10, time='14:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='257', tradeid='243', direction=, offset=, price=2.8, volume=10, time='14:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='258', tradeid='244', direction=, offset=, price=2.6, volume=10, time='14:43:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='259', tradeid='245', direction=, offset=, price=2.6, volume=10, time='09:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='260', tradeid='246', direction=, offset=, price=2.0, volume=10, time='09:34:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='261', tradeid='247', direction=, offset=, price=3.8, volume=10, time='09:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='262', tradeid='248', direction=, offset=, price=3.6, volume=10, time='09:51:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='263', tradeid='249', direction=, offset=, price=3.4, volume=10, time='10:06:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='264', tradeid='250', direction=, offset=, price=2.8, volume=10, time='10:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='265', tradeid='251', direction=, offset=, price=3.6, volume=10, time='10:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='266', tradeid='252', direction=, offset=, price=3.2, volume=10, time='10:20:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='267', tradeid='253', direction=, offset=, price=4.6, volume=10, time='10:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='268', tradeid='254', direction=, offset=, price=4.2, volume=10, time='10:42:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='269', tradeid='255', direction=, offset=, price=3.4, volume=10, time='10:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='270', tradeid='256', direction=, offset=, price=2.8, volume=10, time='11:09:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='271', tradeid='257', direction=, offset=, price=3.2, volume=10, time='11:25:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='272', tradeid='258', direction=, offset=, price=4.6, volume=10, time='11:26:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='273', tradeid='259', direction=, offset=, price=3.8, volume=10, time='11:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='274', tradeid='260', direction=, offset=, price=3.4, volume=10, time='13:01:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='275', tradeid='261', direction=, offset=, price=4.0, volume=10, time='13:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='276', tradeid='262', direction=, offset=, price=3.6, volume=10, time='13:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='277', tradeid='263', direction=, offset=, price=4.2, volume=10, time='13:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='278', tradeid='264', direction=, offset=, price=4.2, volume=10, time='13:48:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='279', tradeid='265', direction=, offset=, price=4.6, volume=10, time='14:47:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='280', tradeid='266', direction=, offset=, price=4.4, volume=10, time='14:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='281', tradeid='267', direction=, offset=, price=3.6, volume=10, time='10:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='282', tradeid='268', direction=, offset=, price=4.2, volume=10, time='10:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='283', tradeid='269', direction=, offset=, price=4.2, volume=10, time='11:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='284', tradeid='270', direction=, offset=, price=4.2, volume=10, time='11:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='285', tradeid='271', direction=, offset=, price=4.0, volume=10, time='13:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='286', tradeid='272', direction=, offset=, price=3.6, volume=10, time='13:25:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='287', tradeid='273', direction=, offset=, price=3.6, volume=10, time='13:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='288', tradeid='274', direction=, offset=, price=4.4, volume=10, time='13:38:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='289', tradeid='275', direction=, offset=, price=3.8, volume=10, time='13:47:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='290', tradeid='276', direction=, offset=, price=3.2, volume=10, time='13:50:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='291', tradeid='277', direction=, offset=, price=2.8, volume=10, time='14:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='292', tradeid='278', direction=, offset=, price=2.8, volume=10, time='14:34:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='293', tradeid='279', direction=, offset=, price=4.6, volume=10, time='14:40:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='294', tradeid='280', direction=, offset=, price=4.2, volume=10, time='14:49:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='295', tradeid='281', direction=, offset=, price=3.0, volume=10, time='09:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='296', tradeid='282', direction=, offset=, price=4.0, volume=10, time='09:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='297', tradeid='283', direction=, offset=, price=3.6, volume=10, time='09:40:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='298', tradeid='284', direction=, offset=, price=4.2, volume=10, time='09:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='299', tradeid='285', direction=, offset=, price=4.2, volume=10, time='10:09:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='300', tradeid='286', direction=, offset=, price=2.2, volume=10, time='10:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='301', tradeid='287', direction=, offset=, price=3.6, volume=10, time='10:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='302', tradeid='288', direction=, offset=, price=4.2, volume=10, time='10:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='303', tradeid='289', direction=, offset=, price=4.2, volume=10, time='11:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='304', tradeid='290', direction=, offset=, price=4.2, volume=10, time='11:17:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='305', tradeid='291', direction=, offset=, price=4.0, volume=10, time='11:21:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='306', tradeid='292', direction=, offset=, price=3.6, volume=10, time='11:22:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='307', tradeid='293', direction=, offset=, price=4.0, volume=10, time='11:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='308', tradeid='294', direction=, offset=, price=3.6, volume=10, time='11:25:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='309', tradeid='295', direction=, offset=, price=2.8, volume=10, time='13:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='310', tradeid='296', direction=, offset=, price=2.4, volume=10, time='13:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='311', tradeid='297', direction=, offset=, price=2.2, volume=10, time='13:54:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='312', tradeid='298', direction=, offset=, price=3.0, volume=10, time='13:58:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='313', tradeid='299', direction=, offset=, price=2.2, volume=10, time='14:14:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='314', tradeid='300', direction=, offset=, price=3.2, volume=10, time='14:17:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='315', tradeid='301', direction=, offset=, price=3.2, volume=10, time='14:34:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='316', tradeid='302', direction=, offset=, price=1.6, volume=10, time='14:35:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='317', tradeid='303', direction=, offset=, price=3.2, volume=10, time='14:54:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='318', tradeid='304', direction=, offset=, price=1.4, volume=10, time='14:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='319', tradeid='305', direction=, offset=, price=2.6, volume=10, time='09:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='320', tradeid='306', direction=, offset=, price=1.6, volume=10, time='09:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='321', tradeid='307', direction=, offset=, price=2.6, volume=10, time='09:50:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='322', tradeid='308', direction=, offset=, price=2.2, volume=10, time='09:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='323', tradeid='309', direction=, offset=, price=2.0, volume=10, time='10:39:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='324', tradeid='310', direction=, offset=, price=1.6, volume=10, time='10:40:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='325', tradeid='311', direction=, offset=, price=3.0, volume=10, time='10:54:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='326', tradeid='312', direction=, offset=, price=3.2, volume=10, time='11:03:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='327', tradeid='313', direction=, offset=, price=2.0, volume=10, time='11:10:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='328', tradeid='314', direction=, offset=, price=2.8, volume=10, time='11:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='329', tradeid='315', direction=, offset=, price=2.6, volume=10, time='11:29:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='330', tradeid='316', direction=, offset=, price=2.6, volume=10, time='13:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='331', tradeid='317', direction=, offset=, price=2.8, volume=10, time='13:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='332', tradeid='318', direction=, offset=, price=3.2, volume=10, time='13:05:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='333', tradeid='319', direction=, offset=, price=1.8, volume=10, time='13:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='334', tradeid='320', direction=, offset=, price=2.6, volume=10, time='13:36:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='335', tradeid='321', direction=, offset=, price=1.8, volume=10, time='13:40:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='336', tradeid='322', direction=, offset=, price=2.4, volume=10, time='13:41:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='337', tradeid='323', direction=, offset=, price=2.2, volume=10, time='13:44:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='338', tradeid='324', direction=, offset=, price=2.4, volume=10, time='13:46:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='339', tradeid='325', direction=, offset=, price=3.6, volume=10, time='13:52:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='340', tradeid='326', direction=, offset=, price=2.6, volume=10, time='13:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='341', tradeid='327', direction=, offset=, price=2.8, volume=10, time='14:23:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='342', tradeid='328', direction=, offset=, price=3.0, volume=10, time='14:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='343', tradeid='329', direction=, offset=, price=2.8, volume=10, time='14:39:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='344', tradeid='330', direction=, offset=, price=2.6, volume=10, time='14:40:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='345', tradeid='331', direction=, offset=, price=2.4, volume=10, time='09:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='346', tradeid='332', direction=, offset=, price=2.4, volume=10, time='09:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='347', tradeid='333', direction=, offset=, price=1.2, volume=10, time='10:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='348', tradeid='334', direction=, offset=, price=2.6, volume=10, time='10:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='349', tradeid='335', direction=, offset=, price=1.8, volume=10, time='10:08:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='350', tradeid='336', direction=, offset=, price=1.8, volume=10, time='10:11:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='351', tradeid='337', direction=, offset=, price=1.8, volume=10, time='10:16:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='352', tradeid='338', direction=, offset=, price=1.8, volume=10, time='10:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='353', tradeid='339', direction=, offset=, price=2.2, volume=10, time='10:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='354', tradeid='340', direction=, offset=, price=1.2, volume=10, time='10:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='355', tradeid='341', direction=, offset=, price=0.8, volume=10, time='11:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='356', tradeid='342', direction=, offset=, price=1.2, volume=10, time='11:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='358', tradeid='343', direction=, offset=, price=0.6, volume=10, time='14:03:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='359', tradeid='344', direction=, offset=, price=0.6, volume=10, time='14:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='360', tradeid='345', direction=, offset=, price=0.2, volume=10, time='14:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='361', tradeid='346', direction=, offset=, price=0.2, volume=10, time='14:14:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='362', tradeid='347', direction=, offset=, price=0.4, volume=10, time='14:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='363', tradeid='348', direction=, offset=, price=1.4, volume=10, time='14:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='365', tradeid='349', direction=, offset=, price=0.8, volume=10, time='10:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='367', tradeid='350', direction=, offset=, price=0.4, volume=10, time='10:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='368', tradeid='351', direction=, offset=, price=1.6, volume=10, time='10:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='369', tradeid='352', direction=, offset=, price=0.8, volume=10, time='10:35:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='370', tradeid='353', direction=, offset=, price=0.2, volume=10, time='11:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='371', tradeid='354', direction=, offset=, price=1.0, volume=10, time='11:02:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='372', tradeid='355', direction=, offset=, price=1.2, volume=10, time='11:15:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='373', tradeid='356', direction=, offset=, price=1.2, volume=10, time='11:17:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='374', tradeid='357', direction=, offset=, price=0.4, volume=10, time='13:07:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='375', tradeid='358', direction=, offset=, price=0.4, volume=10, time='13:09:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='376', tradeid='359', direction=, offset=, price=1.2, volume=10, time='13:49:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='377', tradeid='360', direction=, offset=, price=0.6, volume=10, time='13:51:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='378', tradeid='361', direction=, offset=, price=1.6, volume=10, time='14:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='379', tradeid='362', direction=, offset=, price=0.6, volume=10, time='14:29:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='380', tradeid='363', direction=, offset=, price=1.8, volume=10, time='14:54:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='381', tradeid='364', direction=, offset=, price=2.8, volume=10, time='14:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='382', tradeid='365', direction=, offset=, price=2.6, volume=10, time='14:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='383', tradeid='366', direction=, offset=, price=1.6, volume=10, time='09:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='384', tradeid='367', direction=, offset=, price=1.2, volume=10, time='10:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='385', tradeid='368', direction=, offset=, price=1.4, volume=10, time='10:03:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='386', tradeid='369', direction=, offset=, price=1.6, volume=10, time='10:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='387', tradeid='370', direction=, offset=, price=0.4, volume=10, time='10:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='388', tradeid='371', direction=, offset=, price=0.2, volume=10, time='10:20:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='389', tradeid='372', direction=, offset=, price=2.2, volume=10, time='10:27:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='390', tradeid='373', direction=, offset=, price=1.6, volume=10, time='10:28:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='391', tradeid='374', direction=, offset=, price=1.0, volume=10, time='10:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='392', tradeid='375', direction=, offset=, price=1.4, volume=10, time='10:58:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='393', tradeid='376', direction=, offset=, price=1.0, volume=10, time='11:08:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='394', tradeid='377', direction=, offset=, price=0.8, volume=10, time='11:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='395', tradeid='378', direction=, offset=, price=0.4, volume=10, time='11:19:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='396', tradeid='379', direction=, offset=, price=2.0, volume=10, time='13:10:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='397', tradeid='380', direction=, offset=, price=1.2, volume=10, time='13:13:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='398', tradeid='381', direction=, offset=, price=2.4, volume=10, time='14:00:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='399', tradeid='382', direction=, offset=, price=0.8, volume=10, time='14:02:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='400', tradeid='383', direction=, offset=, price=1.4, volume=10, time='14:24:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='401', tradeid='384', direction=, offset=, price=1.4, volume=10, time='14:25:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='402', tradeid='385', direction=, offset=, price=1.0, volume=10, time='14:38:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='403', tradeid='386', direction=, offset=, price=1.0, volume=10, time='14:44:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='404', tradeid='387', direction=, offset=, price=1.6, volume=10, time='14:50:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='405', tradeid='388', direction=, offset=, price=2.2, volume=10, time='14:55:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='406', tradeid='389', direction=, offset=, price=2.2, volume=10, time='14:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='407', tradeid='390', direction=, offset=, price=1.0, volume=10, time='09:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='408', tradeid='391', direction=, offset=, price=2.2, volume=10, time='10:17:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='409', tradeid='392', direction=, offset=, price=1.0, volume=10, time='10:18:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='410', tradeid='393', direction=, offset=, price=2.4, volume=10, time='10:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='411', tradeid='394', direction=, offset=, price=0.6, volume=10, time='10:32:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='412', tradeid='395', direction=, offset=, price=2.0, volume=10, time='10:52:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='413', tradeid='396', direction=, offset=, price=1.0, volume=10, time='10:56:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='414', tradeid='397', direction=, offset=, price=0.8, volume=10, time='13:01:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='415', tradeid='398', direction=, offset=, price=1.4, volume=10, time='13:04:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='416', tradeid='399', direction=, offset=, price=1.8, volume=10, time='13:31:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='417', tradeid='400', direction=, offset=, price=0.8, volume=10, time='13:33:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='418', tradeid='401', direction=, offset=, price=1.4, volume=10, time='13:45:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='419', tradeid='402', direction=, offset=, price=1.0, volume=10, time='13:46:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='420', tradeid='403', direction=, offset=, price=2.2, volume=10, time='14:30:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='422', tradeid='404', direction=, offset=, price=1.8, volume=10, time='14:34:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='423', tradeid='405', direction=, offset=, price=2.0, volume=10, time='14:53:00')\n", + "TradeData(gateway_name='BACKTESTING', symbol='IF-Spread', exchange=, orderid='424', tradeid='406', direction=, offset=, price=2.0, volume=10, time='14:54:00')\n" ] } ], diff --git a/vnpy/app/spread_trading/strategies/statistical_arbitrage_strategy.py b/vnpy/app/spread_trading/strategies/statistical_arbitrage_strategy.py index 173c12ec..935b8b72 100644 --- a/vnpy/app/spread_trading/strategies/statistical_arbitrage_strategy.py +++ b/vnpy/app/spread_trading/strategies/statistical_arbitrage_strategy.py @@ -94,6 +94,8 @@ class StatisticalArbitrageStrategy(SpreadStrategyTemplate): """ Callback when spread bar data is generated. """ + self.stop_all_algos() + self.am.update_bar(bar) if not self.am.inited: return diff --git a/vnpy/app/spread_trading/template.py b/vnpy/app/spread_trading/template.py index de06bc25..9db6b296 100644 --- a/vnpy/app/spread_trading/template.py +++ b/vnpy/app/spread_trading/template.py @@ -547,7 +547,7 @@ class SpreadStrategyTemplate: def stop_all_algos(self): """""" - for algoid in self.algoids: + for algoid in list(self.algoids): self.stop_algo(algoid) def buy(self, vt_symbol: str, price: float, volume: float, lock: bool = False) -> List[str]: