{ "cells": [ { "cell_type": "code", "execution_count": 3, "id": "7246e0c8-61cd-4cbf-a978-aa0dc0172d6d", "metadata": {}, "outputs": [], "source": [ "import dolphindb as ddb" ] }, { "cell_type": "code", "execution_count": 3, "id": "5d0f471e-682e-43cc-abdb-7e52f3bbd707", "metadata": {}, "outputs": [], "source": [ "sess = ddb.session('localhost', 8848)\n", "sess.login('admin', '123456')" ] }, { "cell_type": "code", "execution_count": null, "id": "fca58bdc-2aa1-4610-9a94-67d55f97a6e1", "metadata": {}, "outputs": [], "source": [ "sess.run(\"\"\"\n", " migrate('/data/dolphindb/backup/', \"dfs://hft_stock_ts\", \"OrderPartitioned\")\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": null, "id": "ed17fd0b-9b36-47e4-9ab6-11459a3621fb", "metadata": {}, "outputs": [], "source": [ "sess = ddb.session('192.168.1.7', 8848)\n", "sess.login('admin', '123456')\n", "\n", "# backup(backup_path, sql_obj, force, parallel)\n", "code = \"\"\"\n", " backup('/data/dolphindb/backup/', , true, false);\n", " backup('/data/dolphindb/backup/', , true, false);\n", " backup('/data/dolphindb/backup/', , true, false);\n", " backup('/data/dolphindb/backup/', , true, false);\n", " backup('/data/dolphindb/backup/', , true, false);\n", "\"\"\"\n", "\n", "sess.run(code)" ] }, { "cell_type": "code", "execution_count": 2, "id": "45c4cbc3-08a1-4083-8117-44e8e3364375", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Failed to connect to host = localhost port = 8848 with error code 111\n" ] }, { "ename": "RuntimeError", "evalue": " in login: Couldn't send script/function to the remote host because the connection has been closed", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mRuntimeError\u001b[0m Traceback (most recent call last)", "Input \u001b[0;32mIn [2]\u001b[0m, in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mdolphindb\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mddb\u001b[39;00m\n\u001b[1;32m 2\u001b[0m sess \u001b[38;5;241m=\u001b[39m ddb\u001b[38;5;241m.\u001b[39msession(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mlocalhost\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;241m8848\u001b[39m)\n\u001b[0;32m----> 3\u001b[0m \u001b[43msess\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mlogin\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43madmin\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m123456\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m 5\u001b[0m \u001b[38;5;66;03m# backup(backup_path, sql_obj, force, parallel)\u001b[39;00m\n\u001b[1;32m 6\u001b[0m sess\u001b[38;5;241m.\u001b[39mrun(\u001b[38;5;124m\"\"\"\u001b[39m\n\u001b[1;32m 7\u001b[0m \u001b[38;5;124m backup(\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/data/dolphindb/backup/\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m, , false, false);\u001b[39m\n\u001b[1;32m 9\u001b[0m \u001b[38;5;124m backup(\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/data/dolphindb/backup/\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m, , false, false);\n", " backup('/data/dolphindb/backup/', , false, false);\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 4, "id": "463a59a8-39cf-4406-9390-da5dfdc44fa7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "50" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess = ddb.session('192.168.1.7', 8848)\n", "sess.login('admin', '123456')\n", "\n", "sess.run(\"\"\"\n", " backup('/data/dolphindb/backup/', , true, false);\n", " backup('/data/dolphindb/backup/', , true, false);\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 69, "id": "bf3bc38e-74cb-4549-bdca-6a3d2a601488", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2287.0" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "114350 / 50" ] }, { "cell_type": "code", "execution_count": 6, "id": "11275975-af43-4123-973a-f75096eb4e43", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2311.0" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "115550 / 50" ] }, { "cell_type": "code", "execution_count": 25, "id": "155735c7-bdad-4c64-a2a1-514fe54e088c", "metadata": {}, "outputs": [], "source": [ "import dolphindb as ddb\n", "\n", "sess = ddb.session('localhost', 8848)\n", "sess.login('admin', '123456')" ] }, { "cell_type": "code", "execution_count": 5, "id": "a2e95bc5-c1d5-47f5-9488-9b8702947afc", "metadata": {}, "outputs": [], "source": [ "# migrate(backupDir, [backupDBPath], [backupTableName], [newDBPath=backupDBPath], [newTableName=backupTableName])\n", "code = \"\"\"\n", " migrate('/data/dolphindb/backup/',\"dfs://hft_stock_ts\", \"KLinePartitioned\")\n", "\"\"\"" ] }, { "cell_type": "code", "execution_count": null, "id": "8a6198ef-e7f1-4f58-ba24-32dc429c9803", "metadata": {}, "outputs": [], "source": [ "sess.run(code)" ] }, { "cell_type": "code", "execution_count": 28, "id": "60f71516-33fc-4147-9740-c493ccb6b6a8", "metadata": {}, "outputs": [], "source": [ "def make_kurto_code_partition(partition_num):\n", " code = \"\"\"\n", " tbl = loadTable(\"dfs://hft_stock_ts\", \"KLinePartitioned\");\n", " ret = select \n", " code, m_nDate, eachPre(\\, m_nClose)-1.0 as ret \n", " from tbl \n", " where partition(code, {partition_num}) \n", " context by m_nDate;\n", " kurto = select \n", " code, m_nDate, sqrt(239) * sum(pow(ret, 3)) / pow(sum(pow(ret, 2)), 1.5) as kurto \n", " from ret \n", " group by code, m_nDate;\n", " \"\"\".format(\n", " partition_num = partition_num\n", " )\n", " sess.run(code)" ] }, { "cell_type": "code", "execution_count": 32, "id": "1397c1b7-f81a-465e-868a-894b3ef818fc", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
codecount
0000400.SZ2305
1000558.SZ2063
2000602.SZ47
3000677.SZ2009
4000731.SZ2311
.........
94688039.SH624
95688052.SH52
96688091.SH198
97688368.SH656
98688396.SH575
\n", "

99 rows × 2 columns

\n", "
" ], "text/plain": [ " code count\n", "0 000400.SZ 2305\n", "1 000558.SZ 2063\n", "2 000602.SZ 47\n", "3 000677.SZ 2009\n", "4 000731.SZ 2311\n", ".. ... ...\n", "94 688039.SH 624\n", "95 688052.SH 52\n", "96 688091.SH 198\n", "97 688368.SH 656\n", "98 688396.SH 575\n", "\n", "[99 rows x 2 columns]" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"\"\"\n", " select code, count(*) from kurto group by code\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 12, "id": "59758901-3728-4355-bbb8-15b3eb537cdf", "metadata": {}, "outputs": [], "source": [ "def create_daily_ddb_database():\n", " code = \"\"\"\n", " daily_stock_ts = database(\n", " \"dfs://daily_stock_ts\", \n", " HASH, [SYMBOL, 50], \n", " engine = 'TSDB'\n", " )\n", " \"\"\"\n", " sess.run(code)" ] }, { "cell_type": "code", "execution_count": 38, "id": "d8fa94ae-6ca4-41f3-8b13-47ab8876ba95", "metadata": {}, "outputs": [], "source": [ "def load_daily_ddb_database():\n", " code = \"\"\"\n", " daily_stock_ts = database(\"dfs://daily_stock_ts\")\n", " \"\"\"\n", " sess.run(code)\n", "\n", "load_daily_ddb_database()" ] }, { "cell_type": "code", "execution_count": 43, "id": "84eb237e-959c-419f-bce1-6779acda86d4", "metadata": {}, "outputs": [], "source": [ "def create_kurto_partition_table():\n", " # createPartitionedTable(dbHandle, table, tableName, [partitionColumns], [compressMethods], [sortColumns], [keepDuplicates=ALL], [sortKeyMappingFunction])\n", " code = \"\"\"\n", " dropTable(daily_stock_ts, \"kurto_partitioned\");\n", " kurto_partitioned = createPartitionedTable(\n", " daily_stock_ts,\n", " kurto, \n", " \"kurto_partitioned\",\n", " partitionColumns = 'code',\n", " compressMethods = {'m_nDate' : 'delta'},\n", " sortColumns = `code`m_nDate\n", " );\n", " \"\"\"\n", " sess.run(code)\n", " \n", "create_kurto_partition_table()" ] }, { "cell_type": "code", "execution_count": 40, "id": "0d93b3d1-39b7-4e23-8abf-eda86dcd2a23", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
codem_nDatekurto
0000400.SZ2013-01-04-0.317991
1000558.SZ2013-01-04-15.387820
2000677.SZ2013-01-04-15.459625
3000731.SZ2013-01-0415.443339
4000752.SZ2013-01-0415.396262
5000789.SZ2013-01-04-14.801720
6000903.SZ2013-01-04-15.405085
7000912.SZ2013-01-0414.755241
8000935.SZ2013-01-0415.413214
9000970.SZ2013-01-0415.458413
\n", "
" ], "text/plain": [ " code m_nDate kurto\n", "0 000400.SZ 2013-01-04 -0.317991\n", "1 000558.SZ 2013-01-04 -15.387820\n", "2 000677.SZ 2013-01-04 -15.459625\n", "3 000731.SZ 2013-01-04 15.443339\n", "4 000752.SZ 2013-01-04 15.396262\n", "5 000789.SZ 2013-01-04 -14.801720\n", "6 000903.SZ 2013-01-04 -15.405085\n", "7 000912.SZ 2013-01-04 14.755241\n", "8 000935.SZ 2013-01-04 15.413214\n", "9 000970.SZ 2013-01-04 15.458413" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"\"\"\n", " kurto_partitioned.tableInsert(kurto);\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 41, "id": "eea5cb0b-8452-41a9-a0ad-7cf52c856c25", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
count
0154953
\n", "
" ], "text/plain": [ " count\n", "0 154953" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"\"\"\n", " select count(*) from kurto_partitioned;\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 45, "id": "9e7bc856-517b-4bf9-866d-4fe85b9705a3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'partitionType': 5,\n", " 'partitionColumnType': 17,\n", " 'partitionColumnIndex': 0,\n", " 'chunkPath': None,\n", " 'colDefs': name typeString typeInt comment\n", " 0 code SYMBOL 17 \n", " 1 m_nDate DATE 6 \n", " 2 kurto DOUBLE 16 ,\n", " 'chunkGranularity': 'TABLE',\n", " 'partitionTypeName': 'HASH',\n", " 'keepDuplicates': 'ALL',\n", " 'engineType': 'TSDB',\n", " 'partitionColumnName': 'code',\n", " 'partitionSchema': 50,\n", " 'sortColumns': array(['code', 'm_nDate'], dtype=object),\n", " 'partitionSites': None}" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"\"\"\n", " schema(loadTable(\"dfs://daily_stock_ts\", \"kurto_partitioned\"));\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 46, "id": "94ae00b5-ba42-48b9-b114-012cf306d871", "metadata": {}, "outputs": [], "source": [ "sess.run(\"m_table = table(kurto)\")" ] }, { "cell_type": "code", "execution_count": 47, "id": "e30134f9-5110-421d-8f71-1bef25e7ef17", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
codem_nDatekurto
0000400.SZ2013-01-04-0.317991
1000400.SZ2013-01-070.790872
2000400.SZ2013-01-080.655005
3000400.SZ2013-01-090.965054
4000400.SZ2013-01-10-0.116488
............
154948688396.SH2022-07-04-15.420192
154949688396.SH2022-07-05-15.426922
154950688396.SH2022-07-06-15.389434
154951688396.SH2022-07-07-15.411602
154952688396.SH2022-07-08-15.401453
\n", "

154953 rows × 3 columns

\n", "
" ], "text/plain": [ " code m_nDate kurto\n", "0 000400.SZ 2013-01-04 -0.317991\n", "1 000400.SZ 2013-01-07 0.790872\n", "2 000400.SZ 2013-01-08 0.655005\n", "3 000400.SZ 2013-01-09 0.965054\n", "4 000400.SZ 2013-01-10 -0.116488\n", "... ... ... ...\n", "154948 688396.SH 2022-07-04 -15.420192\n", "154949 688396.SH 2022-07-05 -15.426922\n", "154950 688396.SH 2022-07-06 -15.389434\n", "154951 688396.SH 2022-07-07 -15.411602\n", "154952 688396.SH 2022-07-08 -15.401453\n", "\n", "[154953 rows x 3 columns]" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"m_table\")" ] }, { "cell_type": "code", "execution_count": 51, "id": "947e3346-15f6-4fb5-b2d6-b97b013a3b36", "metadata": {}, "outputs": [], "source": [ "code = \"\"\"\n", " // 保证创建新的分区表不会和已经存在表冲突\n", " if (existsTable(\"{ddb_daily_path}\", \"{partition_tbl_name}\")) {{\n", " dropTable({ddb_daily_dbname}, \"{partition_tbl_name}\");\n", " }}\n", "\n", " {partition_tbl_name} = createPartitionedTable(\n", " dbHandle = {ddb_daily_dbname},\n", " table = {memory_tbl_name}, \n", " \"{partition_tbl_name}\",\n", " partitionColumns = 'code',\n", " compressMethods = {{'m_nDate' : 'delta'}},\n", " sortColumns = `code`m_nDate\n", " );\n", "\"\"\".format(\n", " ddb_daily_path = \"A\",\n", " ddb_daily_dbname = \"B\",\n", " partition_tbl_name = \"C\",\n", " memory_tbl_name = \"D\",\n", ")" ] }, { "cell_type": "code", "execution_count": 53, "id": "5d758c68-301a-47a7-9cd2-b7dd7edf1a55", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "('\\n'\n", " ' // 保证创建新的分区表不会和已经存在表冲突\\n'\n", " ' if (existsTable(\"A\", \"C\")) {\\n'\n", " ' dropTable(B, \"C\");\\n'\n", " ' }\\n'\n", " '\\n'\n", " ' C = createPartitionedTable(\\n'\n", " ' dbHandle = B,\\n'\n", " ' table = D, \\n'\n", " ' \"C\",\\n'\n", " \" partitionColumns = 'code',\\n\"\n", " \" compressMethods = {'m_nDate' : 'delta'},\\n\"\n", " ' sortColumns = `code`m_nDate\\n'\n", " ' );\\n')\n" ] } ], "source": [ "from pprint import pprint\n", "pprint(code)" ] }, { "cell_type": "code", "execution_count": 56, "id": "400424d9-9c58-4417-94e4-fe1569522b03", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'chunkGranularity': 'TABLE',\n", " 'chunkPath': None,\n", " 'colDefs': name typeString typeInt comment\n", "0 code SYMBOL 17 \n", "1 m_nDate DATE 6 \n", "2 kurto DOUBLE 16 ,\n", " 'engineType': 'TSDB',\n", " 'keepDuplicates': 'ALL',\n", " 'partitionColumnIndex': 0,\n", " 'partitionColumnName': 'code',\n", " 'partitionColumnType': 17,\n", " 'partitionSchema': 50,\n", " 'partitionSites': None,\n", " 'partitionType': 5,\n", " 'partitionTypeName': 'HASH',\n", " 'sortColumns': array(['code', 'm_nDate'], dtype=object)}\n" ] } ], "source": [ "pprint(\n", " sess.run(\"\"\"\n", " schema(loadTable(\"dfs://daily_stock_ts\", \"hft_daily_factor\"));\n", " \"\"\")\n", ")" ] }, { "cell_type": "code", "execution_count": 62, "id": "68e74de8-359c-4c47-a361-2c006896211c", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
count
0309906
\n", "
" ], "text/plain": [ " count\n", "0 309906" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"\"\"\n", " select count(*) from loadTable(\"dfs://daily_stock_ts\", \"hft_daily_factor\");\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 21, "id": "b1bd7605-c347-44f2-a90f-bc949cde0ef0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
codereport_periodappear_in_periodappear_at_dateTOT_OPER_REVOPER_REVINT_INCINSUR_PREM_UNEARNEDHANDLING_CHRG_COMM_INCNET_INC_OTHER_OPS...OTHER_INCOMEMEMOASSET_DISPOSAL_INCOMECONTINUED_NET_PROFITEND_NET_PROFITCREDIT_IMPAIRMENT_LOSSRD_EXPENSESTMNOTE_FINEXPFIN_EXP_INT_INCTOT_OPER_COST2
0000677.SZ2009-12-312009-12-312010-04-263.514495e+093.514495e+090.00.00.026392229.68...0.0nan0.00.00.00.00.00.00.03.474455e+09
1000677.SZ2009-12-312009-12-312011-12-103.514495e+093.514495e+090.00.00.026392229.68...0.0nan0.00.00.00.00.00.00.03.460335e+09
\n", "

2 rows × 69 columns

\n", "
" ], "text/plain": [ " code report_period appear_in_period appear_at_date TOT_OPER_REV \\\n", "0 000677.SZ 2009-12-31 2009-12-31 2010-04-26 3.514495e+09 \n", "1 000677.SZ 2009-12-31 2009-12-31 2011-12-10 3.514495e+09 \n", "\n", " OPER_REV INT_INC INSUR_PREM_UNEARNED HANDLING_CHRG_COMM_INC \\\n", "0 3.514495e+09 0.0 0.0 0.0 \n", "1 3.514495e+09 0.0 0.0 0.0 \n", "\n", " NET_INC_OTHER_OPS ... OTHER_INCOME MEMO ASSET_DISPOSAL_INCOME \\\n", "0 26392229.68 ... 0.0 nan 0.0 \n", "1 26392229.68 ... 0.0 nan 0.0 \n", "\n", " CONTINUED_NET_PROFIT END_NET_PROFIT CREDIT_IMPAIRMENT_LOSS RD_EXPENSE \\\n", "0 0.0 0.0 0.0 0.0 \n", "1 0.0 0.0 0.0 0.0 \n", "\n", " STMNOTE_FINEXP FIN_EXP_INT_INC TOT_OPER_COST2 \n", "0 0.0 0.0 3.474455e+09 \n", "1 0.0 0.0 3.460335e+09 \n", "\n", "[2 rows x 69 columns]" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import dolphindb as ddb \n", "\n", "sess = ddb.session('192.168.1.167', 8848)\n", "sess.login('admin', '123456')\n", "\n", "sess.run(\"\"\"\n", " is_common_adj = loadTable(\"dfs://pit_stock_ts\", \"is_common_adj\")\n", " is_common_ori = loadTable(\"dfs://pit_stock_ts\", \"is_common_ori\")\n", " select * from is_common_ori where code='000677.SZ' and report_period=2009.12.31\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 25, "id": "f0b3928d-c06f-4976-b568-091d98293a6e", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
codereport_periodappear_in_periodappear_at_dateTOT_OPER_REVOPER_REVINT_INCINSUR_PREM_UNEARNEDHANDLING_CHRG_COMM_INCNET_INC_OTHER_OPS...OTHER_INCOMEMEMOASSET_DISPOSAL_INCOMECONTINUED_NET_PROFITEND_NET_PROFITCREDIT_IMPAIRMENT_LOSSRD_EXPENSESTMNOTE_FINEXPFIN_EXP_INT_INCTOT_OPER_COST2
0000677.SZ2009-12-312010-12-312011-04-293.514495e+093.514495e+090.00.00.026392229.68...0.0nan0.00.00.00.00.00.00.03.474455e+09
\n", "

1 rows × 69 columns

\n", "
" ], "text/plain": [ " code report_period appear_in_period appear_at_date TOT_OPER_REV \\\n", "0 000677.SZ 2009-12-31 2010-12-31 2011-04-29 3.514495e+09 \n", "\n", " OPER_REV INT_INC INSUR_PREM_UNEARNED HANDLING_CHRG_COMM_INC \\\n", "0 3.514495e+09 0.0 0.0 0.0 \n", "\n", " NET_INC_OTHER_OPS ... OTHER_INCOME MEMO ASSET_DISPOSAL_INCOME \\\n", "0 26392229.68 ... 0.0 nan 0.0 \n", "\n", " CONTINUED_NET_PROFIT END_NET_PROFIT CREDIT_IMPAIRMENT_LOSS RD_EXPENSE \\\n", "0 0.0 0.0 0.0 0.0 \n", "\n", " STMNOTE_FINEXP FIN_EXP_INT_INC TOT_OPER_COST2 \n", "0 0.0 0.0 3.474455e+09 \n", "\n", "[1 rows x 69 columns]" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"select * from is_common_adj where code='000677.SZ' and report_period=2009.12.31\")" ] }, { "cell_type": "code", "execution_count": 138, "id": "d68ea326-82c3-4a7c-97cf-c04dd8aee56b", "metadata": {}, "outputs": [ { "ename": "RuntimeError", "evalue": " in run: Server response: 'tbl = loadTable(\"dfs://hft_stock_ts\", \"OrderPartitioned\") => FileBlock[/hft_stock_ts/domain, e56bb91f-d4d8-48be-6c4c-df3c1eb96dc4, {}, v1, 9413, c1] returned from name node didn't contain any site' script: '\ntbl = loadTable(\"dfs://hft_stock_ts\", 'OrderPartitioned');\nselect sum(cnt) from (select count(*) as cnt from tbl map);\n'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mRuntimeError\u001b[0m Traceback (most recent call last)", "Input \u001b[0;32mIn [138]\u001b[0m, in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m sess \u001b[38;5;241m=\u001b[39m ddb\u001b[38;5;241m.\u001b[39msession(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m192.168.1.7\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;241m8848\u001b[39m)\n\u001b[1;32m 2\u001b[0m sess\u001b[38;5;241m.\u001b[39mlogin(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124madmin\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m123456\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[0;32m----> 3\u001b[0m \u001b[43msess\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrun\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\"\"\u001b[39;49m\n\u001b[1;32m 4\u001b[0m \u001b[38;5;124;43mtbl = loadTable(\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mdfs://hft_stock_ts\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43m, \u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mOrderPartitioned\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m);\u001b[39;49m\n\u001b[1;32m 5\u001b[0m \u001b[38;5;124;43mselect sum(cnt) from (select count(*) as cnt from tbl map);\u001b[39;49m\n\u001b[1;32m 6\u001b[0m \u001b[38;5;124;43m\"\"\"\u001b[39;49m\u001b[43m)\u001b[49m\n", "File \u001b[0;32m~/.venv/tinysoft/lib/python3.8/site-packages/dolphindb/session.py:161\u001b[0m, in \u001b[0;36msession.run\u001b[0;34m(self, script, *args, **kwargs)\u001b[0m\n\u001b[1;32m 159\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mfetchSize\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01min\u001b[39;00m kwargs\u001b[38;5;241m.\u001b[39mkeys():\n\u001b[1;32m 160\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m BlockReader(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcpp\u001b[38;5;241m.\u001b[39mrunBlock(script, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs))\n\u001b[0;32m--> 161\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcpp\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrun\u001b[49m\u001b[43m(\u001b[49m\u001b[43mscript\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", "\u001b[0;31mRuntimeError\u001b[0m: in run: Server response: 'tbl = loadTable(\"dfs://hft_stock_ts\", \"OrderPartitioned\") => FileBlock[/hft_stock_ts/domain, e56bb91f-d4d8-48be-6c4c-df3c1eb96dc4, {}, v1, 9413, c1] returned from name node didn't contain any site' script: '\ntbl = loadTable(\"dfs://hft_stock_ts\", 'OrderPartitioned');\nselect sum(cnt) from (select count(*) as cnt from tbl map);\n'" ] } ], "source": [ "sess = ddb.session('192.168.1.7', 8848)\n", "sess.login('admin', '123456')\n", "sess.run(\"\"\"\n", "tbl = loadTable(\"dfs://hft_stock_ts\", 'OrderPartitioned');\n", "select sum(cnt) from (select count(*) as cnt from tbl map);\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 20, "id": "7cbc4906-7756-424a-9ce5-9d2b6d1bab4b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
sum_cnt
01483910
\n", "
" ], "text/plain": [ " sum_cnt\n", "0 1483910" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess = ddb.session('192.168.1.7', 8848)\n", "sess.login('admin', '123456')\n", "sess.run(\"\"\"\n", " tbl = loadTable(\"dfs://hft_stock_ts\", 'TickQueuePartitioned');\n", " select sum(cnt) from (select count(*) as cnt from tbl where code='689009.SH' map);\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 9, "id": "e9ab5e57-dce5-4426-9bac-4238cd067197", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Will retrieve partition 0\n", "Will retrieve partition 1\n", "Will retrieve partition 2\n", "Will retrieve partition 3\n", "Will retrieve partition 4\n", "Will retrieve partition 5\n", "Will retrieve partition 6\n", "Will retrieve partition 7\n", "Will retrieve partition 8\n", "Will retrieve partition 9\n", "Will retrieve partition 10\n", "Will retrieve partition 11\n", "Will retrieve partition 12\n", "Will retrieve partition 13\n", "Will retrieve partition 14\n", "Will retrieve partition 15\n", "Will retrieve partition 16\n", "Will retrieve partition 17\n", "Will retrieve partition 18\n", "Will retrieve partition 19\n", "Will retrieve partition 20\n", "Will retrieve partition 21\n", "Will retrieve partition 22\n", "Will retrieve partition 23\n", "Will retrieve partition 24\n", "Will retrieve partition 25\n", "Will retrieve partition 26\n", "Will retrieve partition 27\n", "Will retrieve partition 28\n", "Will retrieve partition 29\n", "Will retrieve partition 30\n", "Will retrieve partition 31\n", "Will retrieve partition 32\n", "Will retrieve partition 33\n", "Will retrieve partition 34\n", "Will retrieve partition 35\n", "Will retrieve partition 36\n", "Will retrieve partition 37\n", "Will retrieve partition 38\n", "Will retrieve partition 39\n", "Will retrieve partition 40\n", "Will retrieve partition 41\n", "Will retrieve partition 42\n", "Will retrieve partition 43\n", "Will retrieve partition 44\n", "Will retrieve partition 45\n", "Will retrieve partition 46\n", "Will retrieve partition 47\n", "Will retrieve partition 48\n", "Will retrieve partition 49\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
code
0000400.SZ
1000558.SZ
2000602.SZ
3000677.SZ
4000731.SZ
\n", "
" ], "text/plain": [ " code\n", "0 000400.SZ\n", "1 000558.SZ\n", "2 000602.SZ\n", "3 000677.SZ\n", "4 000731.SZ" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "\n", "df_list = []\n", "for i in range(50):\n", " print(f\"Will retrieve partition {i}\")\n", " df_list.append(\n", " sess.run(f\"\"\"\n", " select code from tbl where partition(code, {i}) group by code;\n", " \"\"\")\n", " )\n", "df = pd.concat(df_list, axis=0)\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 26, "id": "10eb9af7-739f-4b77-aa92-9abfba875370", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
codem_nDatecnt
0689009.SH2021-08-192728
1689009.SH2022-02-162570
2689009.SH2022-03-022428
3689009.SH2022-03-312584
4689009.SH2022-04-082872
5689009.SH2022-04-122902
6689009.SH2022-04-182766
7689009.SH2022-04-202584
8689009.SH2022-04-222858
\n", "
" ], "text/plain": [ " code m_nDate cnt\n", "0 689009.SH 2021-08-19 2728\n", "1 689009.SH 2022-02-16 2570\n", "2 689009.SH 2022-03-02 2428\n", "3 689009.SH 2022-03-31 2584\n", "4 689009.SH 2022-04-08 2872\n", "5 689009.SH 2022-04-12 2902\n", "6 689009.SH 2022-04-18 2766\n", "7 689009.SH 2022-04-20 2584\n", "8 689009.SH 2022-04-22 2858" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"\"\"\n", " tbl = loadTable(\"dfs://hft_stock_ts\", 'TickQueuePartitioned');\n", " select code, m_nDate, count(*) as cnt from tbl where code='689009.SH' and count(*) < 3000 group by code, m_nDate map;\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 12, "id": "09332a23-4c1b-4d9f-8e7b-c7ef74611700", "metadata": {}, "outputs": [], "source": [ "df.sort_values('code').to_csv('../assets/TickQueuePartitioned.log.csv')" ] }, { "cell_type": "code", "execution_count": 136, "id": "4ba45027-bbb5-4b27-99da-3452cc8d2f1c", "metadata": {}, "outputs": [ { "ename": "RuntimeError", "evalue": " in run: Couldn't send script/function to the remote host because the connection has been closed", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mRuntimeError\u001b[0m Traceback (most recent call last)", "Input \u001b[0;32mIn [136]\u001b[0m, in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43msess\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrun\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\"\"\u001b[39;49m\n\u001b[1;32m 2\u001b[0m \u001b[38;5;124;43m select count(*) from (\u001b[39;49m\n\u001b[1;32m 3\u001b[0m \u001b[38;5;124;43m select code, m_nDate, count(*) as cnt from tbl where code=\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m300065.SZ\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m group by code, m_nDate map\u001b[39;49m\n\u001b[1;32m 4\u001b[0m \u001b[38;5;124;43m );\u001b[39;49m\n\u001b[1;32m 5\u001b[0m \u001b[38;5;124;43m\"\"\"\u001b[39;49m\u001b[43m)\u001b[49m\n", "File \u001b[0;32m~/.venv/tinysoft/lib/python3.8/site-packages/dolphindb/session.py:161\u001b[0m, in \u001b[0;36msession.run\u001b[0;34m(self, script, *args, **kwargs)\u001b[0m\n\u001b[1;32m 159\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mfetchSize\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01min\u001b[39;00m kwargs\u001b[38;5;241m.\u001b[39mkeys():\n\u001b[1;32m 160\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m BlockReader(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcpp\u001b[38;5;241m.\u001b[39mrunBlock(script, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs))\n\u001b[0;32m--> 161\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcpp\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrun\u001b[49m\u001b[43m(\u001b[49m\u001b[43mscript\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", "\u001b[0;31mRuntimeError\u001b[0m: in run: Couldn't send script/function to the remote host because the connection has been closed" ] } ], "source": [ "sess.run(\"\"\"\n", " select count(*) from (\n", " select code, m_nDate, count(*) as cnt from tbl where code='300065.SZ' group by code, m_nDate map\n", " );\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": 126, "id": "29ab8af5-e571-4064-b691-a186d9fb4d08", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
count
m_nDate
\n", "
" ], "text/plain": [ "Empty DataFrame\n", "Columns: [count]\n", "Index: []" ] }, "execution_count": 126, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = sess.run(\"\"\"\n", " select m_nDate, count(*) from tbl where code='300066.SZ' group by m_nDate map;\n", "\"\"\").set_index('m_nDate')\n", "df" ] }, { "cell_type": "code", "execution_count": 51, "id": "013d191b-2a41-4d7b-8382-b6ee8764c2d0", "metadata": {}, "outputs": [], "source": [ "import sqlalchemy as sa\n", "engine = sa.create_engine(\n", " 'mssql+pyodbc://sa:passw0rd!@192.168.1.7/master?driver=ODBC+Driver+18+for+SQL+Server',\n", " connect_args = {\n", " \"TrustServerCertificate\": \"yes\"\n", " }, echo=False)" ] }, { "cell_type": "code", "execution_count": 54, "id": "c90e8e9d-cde0-4a7a-afd3-ea771483f001", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'20130104'" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "with engine.connect() as conn:\n", " rows = conn.execute(\"select * from [Level2BytesTick].dbo.[Tick] where S_INFO_WINDCODE='002182.SZ'\").fetchall()\n", " rows = [row for row in rows]\n", " " ] }, { "cell_type": "code", "execution_count": 58, "id": "525dfcf1-720a-4b65-90b5-28d0c2118cf5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "dt = pd.to_datetime(rows[0][1], format='%Y%m%d')\n", "dt in df.index" ] }, { "cell_type": "code", "execution_count": 31, "id": "0e6e949b-ff25-40eb-a70a-72a3a6639aec", "metadata": {}, "outputs": [ { "ename": "RuntimeError", "evalue": " in run: Failed to read response header from the socket with IO error type 13", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mRuntimeError\u001b[0m Traceback (most recent call last)", "Input \u001b[0;32mIn [31]\u001b[0m, in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m code \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\"\"\u001b[39m\n\u001b[1;32m 2\u001b[0m \u001b[38;5;124mtbl = loadTable(\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mdfs://hft_stock_ts\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m, \u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mTickPartitioned\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m)\u001b[39m\n\u001b[1;32m 3\u001b[0m \n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[38;5;124m}\u001b[39m\n\u001b[1;32m 14\u001b[0m \u001b[38;5;124m\"\"\"\u001b[39m\n\u001b[0;32m---> 15\u001b[0m \u001b[43msess\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrun\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcode\u001b[49m\u001b[43m)\u001b[49m\n", "File \u001b[0;32m~/.venv/tinysoft/lib/python3.8/site-packages/dolphindb/session.py:161\u001b[0m, in \u001b[0;36msession.run\u001b[0;34m(self, script, *args, **kwargs)\u001b[0m\n\u001b[1;32m 159\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mfetchSize\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01min\u001b[39;00m kwargs\u001b[38;5;241m.\u001b[39mkeys():\n\u001b[1;32m 160\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m BlockReader(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcpp\u001b[38;5;241m.\u001b[39mrunBlock(script, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs))\n\u001b[0;32m--> 161\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcpp\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrun\u001b[49m\u001b[43m(\u001b[49m\u001b[43mscript\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", "\u001b[0;31mRuntimeError\u001b[0m: in run: Failed to read response header from the socket with IO error type 13" ] } ], "source": [ "code = \"\"\"\n", "tbl = loadTable(\"dfs://hft_stock_ts\", 'TickPartitioned')\n", "\n", "for (code in ['000666.SZ' , '000667.SZ', '000668.SZ', '000669.SZ']) {\n", "\tdel_date = 2013.01.01\n", "\t//end_date = 2013.01.31\n", "\tdo {\n", "\t\t//print('Deleting ' + code + ' from ' + start_date + ' to ' + end_date);\n", "\t\tprint('Deleting ' + code + ' of ' + del_date);\n", "\t\tdelete from tbl where m_nDate=del_date and code=code;\n", "\t\tdel_date = temporalAdd(del_date, 1, \"d\");\n", "\t} while (del_date <= 2022.12.31)\n", "}\n", "\"\"\"\n", "# 这段代码运行好赶紧注释掉,非常危险\n", "# sess.run(code)" ] }, { "cell_type": "code", "execution_count": 37, "id": "ea0501e7-d416-45ce-add5-e443c55f158c", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
codeindustry_codeindustry_nameindustry_levelenter_dateexit_dateis_newindustry_class
0000017.SZSWHY310000申万交运设备11992-03-312011-10-100SWHY
1000017.SZSWHY310300申万非汽车交运设备21992-03-312011-10-100SWHY
2000017.SZSWHY310301申万摩托车31992-03-312011-10-100SWHY
3000017.SZSWHY310000申万交运设备12011-10-102014-02-210SWHY
4000017.SZSWHY310300申万非汽车交运设备22011-10-102014-02-210SWHY
...........................
95000157.SZSWHY260202申万工程机械32000-10-122014-02-210SWHY
96000157.SZSWHY640000申万机械设备12014-02-212021-12-130SWHY
97000157.SZSWHY640200申万专用设备22014-02-212021-12-130SWHY
98000157.SZSWHY640201申万工程机械32014-02-212021-12-130SWHY
99000157.SZSWHY640000申万机械设备12021-12-13NaT1SWHY
\n", "

100 rows × 8 columns

\n", "
" ], "text/plain": [ " code industry_code industry_name industry_level enter_date \\\n", "0 000017.SZ SWHY310000 申万交运设备 1 1992-03-31 \n", "1 000017.SZ SWHY310300 申万非汽车交运设备 2 1992-03-31 \n", "2 000017.SZ SWHY310301 申万摩托车 3 1992-03-31 \n", "3 000017.SZ SWHY310000 申万交运设备 1 2011-10-10 \n", "4 000017.SZ SWHY310300 申万非汽车交运设备 2 2011-10-10 \n", ".. ... ... ... ... ... \n", "95 000157.SZ SWHY260202 申万工程机械 3 2000-10-12 \n", "96 000157.SZ SWHY640000 申万机械设备 1 2014-02-21 \n", "97 000157.SZ SWHY640200 申万专用设备 2 2014-02-21 \n", "98 000157.SZ SWHY640201 申万工程机械 3 2014-02-21 \n", "99 000157.SZ SWHY640000 申万机械设备 1 2021-12-13 \n", "\n", " exit_date is_new industry_class \n", "0 2011-10-10 0 SWHY \n", "1 2011-10-10 0 SWHY \n", "2 2011-10-10 0 SWHY \n", "3 2014-02-21 0 SWHY \n", "4 2014-02-21 0 SWHY \n", ".. ... ... ... \n", "95 2014-02-21 0 SWHY \n", "96 2021-12-13 0 SWHY \n", "97 2021-12-13 0 SWHY \n", "98 2021-12-13 0 SWHY \n", "99 NaT 1 SWHY \n", "\n", "[100 rows x 8 columns]" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sess.run(\"\"\"\n", "tbl = loadTable(\"dfs://info_stock_ts\", 'info_industry');\n", "select top 100 * from tbl map;\n", "\"\"\")" ] }, { "cell_type": "code", "execution_count": null, "id": "16dd860d-049f-420e-8d04-d1f8969e5ed1", "metadata": {}, "outputs": [], "source": [ "sess = ddb.session('192.168.1.7', 8848)\n", "sess.login('admin', '123456')\n", "\n", "code = \"\"\"\n", "tbl = loadTable(\"dfs://hft_stock_ts\", 'TickQueuePartitioned')\n", "code = '689009.SH'\n", "\n", "del_date = 2013.01.01\n", "do {\n", " //print('Deleting ' + code + ' from ' + start_date + ' to ' + end_date);\n", " print('Deleting ' + code + ' of ' + del_date);\n", " delete from tbl where m_nDate=del_date and code=code;\n", " del_date = temporalAdd(del_date, 1, \"d\");\n", "} while (del_date <= 2022.12.31)\n", "\"\"\"\n", "# 这段代码运行好赶紧注释掉,非常危险\n", "# sess.run(code)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.13" } }, "nbformat": 4, "nbformat_minor": 5 }