Files
v2realbot/v2realbot/static/index.html
2023-09-04 20:10:46 +02:00

595 lines
39 KiB
HTML

<!doctype html>
<html lang="en" data-bs-theme="dark">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>V2realbot</title>
<link rel="apple-touch-icon" sizes="180x180" href="/static/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/static//favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/static//favicon-16x16.png">
<link rel="manifest" href="/static/site.webmanifest">
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" />
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdn.datatables.net/1.13.4/css/dataTables.bootstrap5.min.css">
<script src="https://code.jquery.com/jquery-3.6.4.js" integrity="sha256-a9jBBRygX1Bh5lt8GZjXDzyOB+bWve9EiO7tROUtj/E=" crossorigin="anonymous"></script>
<script src="https://cdn.datatables.net/1.13.4/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
<script src="https://cdn.datatables.net/select/1.6.2/js/dataTables.select.min.js"></script>
<!-- <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link href="https://cdn.datatables.net/1.13.4/css/jquery.dataTables.min.css" rel="stylesheet">
<script src="/static/js/jquery.dataTables.min.js"></script> -->
<!-- <script src="https://code.jquery.com/jquery-3.5.1.js"></script> -->
<link rel="stylesheet" href="/static/main.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/mousetrap/1.4.6/mousetrap.min.js"></script>
<!-- <script src="https://cdn.datatables.net/select/1.6.2/js/dataTables.select.min.js"></script> -->
<script src="/static/js/fast-toml.js" type="text/javascript"></script>
<!-- <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.41.0/min/vs/editor/editor.main.js"></script> -->
<!-- <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.41.0/min/vs/loader.min.js"></script> -->
</head>
<body>
<div id="main" class="mainConteiner flex-container content">
<div id="chartContainer" class="flex-items">
<label data-bs-toggle="collapse" data-bs-target="#chartContainerInner" aria-expanded="true">
<h4>Chart</h4>
</label>
<div>Status: <span id="status">Not connected</span></div>
<div id="chartContainerInner" class="collapse">
<div id="formular">
<form action="">
<input type="text" id="runnerId" autocomplete="off" placeholder="StrategyID" value=""/>
<button onclick="connect(event)" id="bt-conn" class="btn btn-outline-success btn-sm">Connect</button>
<button onclick="disconnect(event)" id="bt-disc" style="display: None" class="btn btn-outline-success btn-sm">Disconnect</button>
<!-- <label>Message: --> <input type="text" id="messageText" autocomplete="off" placeholder="WS out message"/>
<button onclick="sendMessage(event)" id="bt.send" class="btn btn-outline-success btn-sm">Send</button>
</form>
</div>
<div id="statusHeader" data-bs-toggle="collapse" data-bs-target="#statusDetail">
<div id="statusRegime" class="headerItem"></div>
<div id="statusName" class="headerItem"></div>
<div id="statusMode" class="headerItem"></div>
<div id="statusAccount" class="headerItem"></div>
<div id="statusIlog" class="headerItem"></div>
<div id="statusDetail" class="headerItem collapse">
<pre id="statusStratvars" class="headerItem"></pre>
<pre id="statusSettings" class="headerItem"></pre>
</div>
</div>
<div id="statusHeaderTool"></div>
<div id="chart" style="display: None; float: left; "></div>
<div class="legend" id="legend"></div>
<div id="msgContainer">
<div class="clearbutton">
<button id="button_clearlog" class="btn btn-outline-success btn-sm" style="display:none;">Clear</button>
</div>
<div class="msgContainerInner">
<div id="lines">
</div>
</div>
</div>
</div>
</div>
<div id="hist-trades" class="flex-items">
<div id="form-trades">
<label data-bs-toggle="collapse" data-bs-target="#trades-data">
<h4>Trade History</h4>
</label>
<label>Timestamp: <input type="text" id="trade-timestamp" autocomplete="off"/></label>
<label>SYM: <input type="text" id="trade-symbol" autocomplete="off"/></label>
<label>Count: <input type="number" id="trade-count" autocomplete="off" value="2"/></label>
<label>Minsize: <input type="number" id="trade-minsize" autocomplete="off" value="100"/></label>
<label>Filter: C,O,4,B,7,V,P<input type="text" id="trade-filter" autocomplete="off"/></label>
<button id="bt-trade" class="btn btn-outline-success btn-sm">Show</button></div>
<div id="trades-data" style="display: none" class="collapse show">
<table id="trades-data-table" class="dataTable no-footer" style="width:300px; border-color: #dce1dc; display:contents"></table>
<!-- <table id="trades-data-table" class="dataTable no-footer" style="width: 300px;display: contents;"></table> -->
</div>
</div>
<div id="runner-table" class="flex-items">
<label data-bs-toggle="collapse" data-bs-target="#runner-table-inner">
<h4>Running Strategies</h4>
</label>
<div id="runner-table-inner" class="collapse show" style="width:70%">
<div id="controls">
<label>API-KEY: <input type="password" id="api-key" autocomplete="off"/></label>
<button onclick="store_api_key(event)" id="bt-store" class="btn btn-outline-success btn-sm">Store</button>
<button id="button_pause" class="btn btn-outline-success btn-sm">Pause/Unpause</button>
<button id="button_stop" class="btn btn-outline-success btn-sm">Stop</button>
<button id="button_stopall" class="btn btn-outline-success btn-sm">Stop All</button>
<button id="button_refresh" class="refresh btn btn-outline-success btn-sm">Refresh</button>
<button id="button_connect" class="btn btn-outline-success btn-sm">Connect</button>
</div>
<div>status info</div>
<table id="runnerTable" class="table-striped table dataTable" style="width:100%; border-color: #dce1dc;">
<thead>
<tr>
<th>Id</th>
<th>StratId</th>
<th>Started</th>
<th>Mode</th>
<th>Symbol</th>
<th>Account</th>
<th>ilog</th>
<th>Paused</th>
<th>Profit</th>
<th>Trades</th>
<th>Pos</th>
<th>AVGP</th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
<div id="runnerModal" class="modal fade">
<div class="modal-dialog">
<form method="post" id="stopForm">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"><i class="fa fa-plus"></i> Stop Strategy</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="runnerid" class="form-label">Id</label>
<input type="text" class="form-control" id="runnerid" name="runnerid" placeholder="id">
</div>
</div>
<div class="modal-footer">
<input type="submit" name="stop" id="stop" class="btn btn-primary" value="stop" />
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
</div>
<div id="archive-table" class="flex-items">
<label data-bs-toggle="collapse" data-bs-target="#archive-table-inner">
<h4>Past Runs</h4>
</label>
<div id="archive-table-inner" class="collapse show" style="width:70%">
<!-- <div id="archive-chart">
<div id="chartArchive" style="position: relative;"></div>
<div class="legend" id="legendArchive"></div>
</div> -->
<div id="controls">
<button id="button_edit_arch" class="btn btn-outline-success btn-sm">Edit</button>
<button id="button_delete_arch" class="btn btn-outline-success btn-sm">Delete</button>
<button id="button_show_arch" class="btn btn-outline-success btn-sm">Show</button>
<button id="button_refresh" class="refresh btn btn-outline-success btn-sm">Refresh</button>
<button id="button_compare_arch" class="refresh btn btn-outline-success btn-sm">Compare</button>
<!-- <button id="button_stopall" class="btn btn-outline-success btn-sm">Stop All</button>
<button id="button_refresh" class="btn btn-outline-success btn-sm">Refresh</button> -->
</div>
<table id="archiveTable" class="table-striped table dataTable" style="width:100%; border-color: #dce1dc;">
<thead>
<tr>
<th>Id</th>
<th>StratId</th>
<th>Name</th>
<th>Sym</th>
<th>Note</th>
<th>started</th>
<th>stopped</th>
<th>mode</th>
<th>account</th>
<th>bt_from</th>
<th>bt_to</th>
<th>ilog</th>
<th>stratvars</th>
<th>profit</th>
<th>trade</th>
<th>pos</th>
<th>pos_avgp</th>
<th>json</th>
<th>metrics</th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
<div id="delModalArchive" class="modal fade">
<div class="modal-dialog">
<form method="post" id="delFormArchive">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"><i class="fa fa-plus"></i> Delete Archive</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="delidarchive" class="form-label">Id</label>
<input type="text" class="form-control" id="delidarchive" name="delidarchive" placeholder="id">
</div>
</div>
<div class="modal-footer">
<input type="submit" name="delete" id="deletearchive" class="btn btn-primary" value="Delete" />
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
<div id="editModalArchive" class="modal fade">
<div class="modal-dialog">
<form method="post" id="editFormArchive">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"><i class="fa fa-plus"></i> Edit Archive</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="editidarchive" class="form-label">Id</label>
<input type="text" class="form-control" id="editidarchive" name="id" placeholder="id" readonly>
</div>
<div class="form-group">
<label for="editnote" class="form-label">note</label>
<textarea class="form-control" rows="3" id="editnote" name="note"></textarea>
</div>
<div class="form-group">
<label for="metrics" class="form-label">Metrics</label>
<textarea class="form-control" rows="8" id="metrics" name="metrics"></textarea>
</div>
<div class="form-group">
<label for="stratvars" class="form-label">Stratvars</label>
<textarea class="form-control" rows="8" id="editstratvars" name="stratvars"></textarea>
</div>
<div class="form-group">
<label for="strat_json" class="form-label">Strat JSON</label>
<textarea class="form-control" rows="6" id="editstratjson" name="stratjson"></textarea>
</div>
</div>
<div class="modal-footer">
<input type="submit" name="delete" id="editarchive" class="btn btn-primary" value="Edit" />
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
</div>
<div id="stratin-table" class="flex-items">
<label data-bs-toggle="collapse" data-bs-target="#stratin-table-inner">
<h4>Strategies</h4>
</label>
<div id="stratin-table-inner" class="collapse show" style="width:70%">
<div id="controlsStratin">
<button id="button_add" class="btn btn-outline-success btn-sm">Add</button>
<button id="button_add_json" class="btn btn-outline-success btn-sm">Add JSON</button>
<button id="button_edit" class="btn btn-outline-success btn-sm">Edit</button>
<button id="button_dup" class="btn btn-outline-success btn-sm">Duplicate</button>
<button id="button_copy" class="btn btn-outline-success btn-sm">Copy JSON</button>
<button id="button_delete" class="btn btn-outline-success btn-sm">Delete</button>
<button id="button_compare" class="btn btn-outline-success btn-sm">Compare</button>
<button id="button_run" class="btn btn-outline-success btn-sm">Run Strategy</button>
<button id="button_refresh" class="refresh btn btn-outline-success btn-sm">Refresh</button>
</div>
<table id="stratinTable" class="table-striped table dataTable" style="width:100%; border-color: #dce1dc;">
<thead>
<tr>
<th>Id</th>
<th>Id2</th>
<th>Name</th>
<th>Symbol</th>
<th>class</th>
<th>script</th>
<th>OR</th>
<th>CR</th>
<th>Stratvars</th>
<th>add_data</th>
<th>note</th>
<th>history</th>
<th>status</th>
<!-- <th></th> -->
</tr>
</thead>
<tbody></tbody>
</table>
</div>
<div id="recordModal" class="modal fade">
<div class="modal-dialog">
<form method="post" id="recordForm">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"><i class="fa fa-plus"></i> Add Record</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="id" class="form-label">Id</label>
<input type="text" class="form-control" id="id" name="id" placeholder="id" readonly>
</div>
<div class="form-group">
<label for="id2" class="form-label">Id2</label>
<input type="text" class="form-control" id="id2" name="id2" placeholder="id2" required>
</div>
<div class="form-group">
<label for="name" class="form-label">Name</label>
<input type="text" class="form-control" id="name" name="name" placeholder="Name" required>
</div>
<div class="form-group">
<label for="symbol" class="form-label">symbol</label>
<input type="text" class="form-control" id="symbol" name="symbol" placeholder="Symbol" required>
</div>
<div class="form-group">
<label for="class_name" class="form-label">class_name</label>
<input type="text" class="form-control" id="class_name" name="class_name" placeholder="class_name" required>
</div>
<div class="form-group">
<label for="script" class="form-label">script</label>
<input type="text" class="form-control" id="script" name="script" placeholder="script" required>
</div>
<div class="form-group">
<label for="open_rush" class="form-label">open_rush</label>
<input type="number" class="form-control" id="open_rush" name="open_rush" placeholder="open_rush" value=0 required>
</div>
<div class="form-group">
<label for="close_rush" class="form-label">close_rush</label>
<input type="number" class="form-control" id="close_rush" name="close_rush" placeholder="close_rush" value=0 required>
</div>
<div class="form-group">
<div id="editor"></div>
</div>
<!-- Create a textarea for saving content -->
<!-- <textarea id="content" style="display: none;"></textarea> -->
<div class="form-group">
<label for="stratvars_conf" class="form-label">stratvars_conf</label>
<textarea class="form-control" rows="16" id="stratvars_conf" name="stratvars_conf" required></textarea>
</div>
<div class="form-group">
<label for="add_data_conf" class="form-label">add_data_conf</label>
<textarea class="form-control" rows="7" id="add_data_conf" name="add_data_conf" required></textarea>
</div>
<div class="form-group">
<label for="note" class="form-label">note</label>
<textarea class="form-control" rows="7" id="note" name="note"></textarea>
</div>
<div class="form-group">
<label for="history" class="form-label">history</label>
<textarea class="form-control" rows="3" id="history" name="history"></textarea>
</div>
</div>
<div class="modal-footer">
<!--<input type="hidden" name="id" id="id" />-->
<!--<input type="hidden" name="action" id="action" value="" />-->
<input type="submit" name="save" id="save" class="btn btn-primary" value="Save" />
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
<div id="delModal" class="modal fade">
<div class="modal-dialog">
<form method="post" id="delForm">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title_del"><i class="fa fa-plus"></i> Delete Record</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="delid" class="form-label">Id</label>
<input type="text" class="form-control" id="delid" name="delid" placeholder="id">
</div>
</div>
<div class="modal-footer">
<input type="submit" name="delete" id="delete" class="btn btn-primary" value="Delete" />
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
<div id="jsonModal" class="modal fade">
<div class="modal-dialog">
<form method="post" id="jsonForm">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title_json"><i class="fa fa-plus"></i> Add JSON Record</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="jsontext" class="form-label">JSON</label>
<textarea class="form-control" rows="7" id="jsontext" name="jsontext" required></textarea>
</div>
</div>
<div class="modal-footer">
<input type="submit" name="json_add" id="json_add" class="btn btn-primary" value="Add" />
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
<div id="diffModal" class="modal fade" style="--bs-modal-width: 900px;">
<div class="modal-dialog">
<form method="post" id="diffForm">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title_dif"><i class="fa fa-plus"></i> Diff</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div id="diff_content"></div>
<div class="form-group" style="float: left; width: 470px;">
<label id="diff_first" for="first" class="form-label">First</label>
<div id="first" name="first"></div>
</div>
<div class="form-group">
<label id="diff_second" for="second" class="form-label">Second</label>
<div id="second" name="second"></div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
<div id="runModal" class="modal fade">
<div class="modal-dialog">
<form method="post" id="runForm">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title_run"><i class="fa fa-plus"></i> Run strategy</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="runid" class="form-label">Id</label>
<input type="text" class="form-control" id="runid" name="runid" placeholder="id" readonly>
</div>
<div class="form-group">
<label for="mode" class="form-label">Mode</label>
<select class="form-control" id="mode" name="mode"><option value="paper">paper</option><option value="live">live</option><option value="backtest">backtest</option></select>
</div>
<div class="form-group">
<label for="account" class="form-label">Account</label>
<select class="form-control" id="account" name="account"><option value="ACCOUNT1">ACCOUNT1</option><option value="ACCOUNT2">ACCOUNT2</option></select>
</div>
<div class="form-group">
<label for="debug" class="form-label">debug</label>
<select class="form-control" id="debug" name="debug"><option value="true">true</option><option value="false" selected>false</option></select>
</div>
<div class="form-group">
<label for="bt_from" class="form-label">bt_from</label>
<input type="datetime-local" class="form-control" id="bt_from" name="bt_from" placeholder="2023-04-06T09:00:00Z" step="1">
</div>
<div class="form-group">
<label for="bt_to" class="form-label">bt_to</label>
<input type="datetime-local" class="form-control" id="bt_to" name="bt_to" placeholder="2023-04-06T09:00:00Z" step="1">
</div>
<div class="form-group">
<label for="test_batch_id" class="form-label">Test Batch ID</label>
<input type="text" class="form-control" id="test_batch_id" name="test_batch_id" placeholder="test intervals ID">
</div>
<div class="form-group">
<label for="cash" class="form-label">cash</label>
<input type="number" class="form-control" id="cash" name="cash" placeholder="cash" value="100000">
</div>
<div class="form-group">
<div style="display:inline-flex">
<label for="ilog_save" class="form-label">Enable logs</label>
<input type="checkbox" class="form-check" id="ilog_save" name="ilog_save" aria-label="Enable logs">
</div>
</div>
<div class="form-group">
<div style="display:inline-flex">
<label for="subscribe" class="form-label">Show real time</label>
<input type="checkbox" class="form-check" id="subscribe" name="subscribe" aria-label="Real time subscribe">
</div>
</div>
<div class="form-group">
<label for="note" class="form-label">note</label>
<textarea class="form-control" rows="1" id="note" name="note"></textarea>
</div>
</div>
<div class="modal-footer">
<!--<input type="hidden" name="id" id="id" />-->
<!--<input type="hidden" name="action" id="action" value="" />-->
<input type="submit" name="run" id="run" class="btn btn-primary" value="Run" />
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</form>
</div>
</div>
</div>
<div id="TestListContainer" class="flex-items">
<label data-bs-toggle="collapse" data-bs-target="#TestListInner" aria-expanded="true">
<h4>TestList Configuration</h4>
</label>
<div id="TestListInner" class="collapse show">
<div>
<form id="recordFormTestList">
<input type="hidden" id="recordId">
<label for="recordName">Name:</label>
<input type="text" id="recordName" required>
<br>
<!-- TODO predelat na intervaly v ramci dne (tzn. 1.1. 9:30 - 1.1. 9:45) -->
<!-- tzn. jeden zaznam v poli = start + end -->
<label for="datepickerstart">Start:</label>
<input type="datetime-local" id="datepickerstart" step="1">
<label for="datepickerend">End:</label>
<input type="datetime-local" id="datepickerend" step="1">
<label for="datenote">Note:</label>
<input type="text" id="datenote">
<button type="button" id="addTagBtn" class="btn btn-outline-success btn-sm">Add Date</button>
<br>
<div id="tagContainer"></div>
<br>
<button type="submit" id="saveBtn" class="btn btn-outline-success btn-sm">Save</button>
<button type="button" id="cancelBtn" class="btn btn-outline-success btn-sm">Cancel</button>
</form>
<div id="output"></div>
</div>
<div>
<h4>Test Lists</h4>
<div id="recordsList"></div>
</div>
</div>
</div>
<div id="configContainer" class="flex-items">
<label data-bs-toggle="collapse" data-bs-target="#configInner" aria-expanded="true">
<h4>Config</h4>
</label>
<div id="configInner" class="collapse show">
<form id="configForm">
<label for="configList">Select an Item:</label>
<select id="configList"></select><br><br>
<label for="itemName">Item Name:</label>
<input type="text" id="itemName"><br><br>
<label for="jsonTextarea">JSON Data:</label><br>
<textarea id="jsonTextarea" rows="10" cols="50"></textarea><br><br>
<button type="button" id="saveButton">Save</button>
<button type="button" id="addButton">Add</button>
<button type="button" id="deleteButton">Delete</button>
<button type="button" id="cancelButton">Cancel</button>
</form>
</div>
</div>
<div id="bottomContainer" class="flex-items" style="height: 800px">
<BR>
</div>
</div>
<script src="/static/js/config.js"></script>
<script type="text/javascript" src="https://unpkg.com/lightweight-charts/dist/lightweight-charts.standalone.production.js"></script>
<script src="/static/js/jquery.serializejson.js"></script>
<script src="/static/js/utils.js"></script>
<script src="/static/js/archivechart.js"></script>
<script src="/static/js/archivetables.js"></script>
<script src="/static/js/livewebsocket.js"></script>
<script src="/static/js/realtimechart.js"></script>
<script src="/static/js/mytables.js"></script>
<script src="/static/js/testlist.js"></script>
<script src="/static/js/configform.js"></script>
</body>
</html>