608 lines
2.3 MiB
Plaintext
608 lines
2.3 MiB
Plaintext
|
|
{
|
|||
|
|
"cells": [
|
|||
|
|
{
|
|||
|
|
"cell_type": "code",
|
|||
|
|
"execution_count": 75,
|
|||
|
|
"id": "initial_id",
|
|||
|
|
"metadata": {
|
|||
|
|
"ExecuteTime": {
|
|||
|
|
"end_time": "2025-07-12T14:39:30.843472Z",
|
|||
|
|
"start_time": "2025-07-12T14:39:30.823755Z"
|
|||
|
|
},
|
|||
|
|
"collapsed": true
|
|||
|
|
},
|
|||
|
|
"outputs": [
|
|||
|
|
{
|
|||
|
|
"name": "stdout",
|
|||
|
|
"output_type": "stream",
|
|||
|
|
"text": [
|
|||
|
|
"The autoreload extension is already loaded. To reload it, use:\n",
|
|||
|
|
" %reload_ext autoreload\n"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"source": [
|
|||
|
|
"from datetime import datetime\n",
|
|||
|
|
"%load_ext autoreload\n",
|
|||
|
|
"%autoreload 2\n"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"cell_type": "code",
|
|||
|
|
"execution_count": null,
|
|||
|
|
"id": "a559dfcf",
|
|||
|
|
"metadata": {
|
|||
|
|
"ExecuteTime": {
|
|||
|
|
"end_time": "2025-07-12T14:39:35.610573Z",
|
|||
|
|
"start_time": "2025-07-12T14:39:30.855663Z"
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
"outputs": [
|
|||
|
|
{
|
|||
|
|
"name": "stdout",
|
|||
|
|
"output_type": "stream",
|
|||
|
|
"text": [
|
|||
|
|
"初始化数据管理器...\n",
|
|||
|
|
"数据加载成功: /mnt/d/PyProject/NewQuant/data/data/KQ_m@SHFE_rb/KQ_m@SHFE_rb_min60.csv\n",
|
|||
|
|
"数据范围从 2021-12-31 14:00:00 到 2025-06-20 21:00:00\n",
|
|||
|
|
"总计 5811 条记录。\n",
|
|||
|
|
"\n",
|
|||
|
|
"初始化回测引擎...\n",
|
|||
|
|
"模拟器初始化:初始资金=100000.00, 滑点率=0.0, 佣金率=0.0001\n",
|
|||
|
|
"\n",
|
|||
|
|
"--- 回测引擎初始化完成 ---\n",
|
|||
|
|
" 策略: SimpleLimitBuyStrategyShort\n",
|
|||
|
|
" 初始资金: 100000.00\n",
|
|||
|
|
" 换月模式: 启用\n",
|
|||
|
|
"\n",
|
|||
|
|
"开始运行回测...\n",
|
|||
|
|
"\n",
|
|||
|
|
"--- 回测开始 ---\n",
|
|||
|
|
"SimpleLimitBuyStrategyShort 策略初始化回调被调用。\n",
|
|||
|
|
"开始将 DataFrame 转换为 Bar 对象流...\n",
|
|||
|
|
"Bar 对象流生成完毕。\n",
|
|||
|
|
"\n",
|
|||
|
|
"--- 回测结束,检查并平仓所有剩余持仓 ---\n",
|
|||
|
|
"--- 回测结束 ---\n",
|
|||
|
|
"总计处理了 1671 根K线。\n",
|
|||
|
|
"总计发生了 90 笔交易。\n",
|
|||
|
|
"最终总净值: 101766.31\n",
|
|||
|
|
"总收益率: 1.77%\n",
|
|||
|
|
"\n",
|
|||
|
|
"回测运行完毕。\n",
|
|||
|
|
"\n",
|
|||
|
|
"--- 结果分析器初始化完成 ---\n",
|
|||
|
|
"\n",
|
|||
|
|
"--- 交易明细 ---\n",
|
|||
|
|
" 2024-06-20 09:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3619.00 | Comm: 0.36\n",
|
|||
|
|
" 2024-06-21 21:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3559.00 | Comm: 0.36 | PnL: 60.00\n",
|
|||
|
|
" 2024-07-15 10:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3577.00 | Comm: 0.36\n",
|
|||
|
|
" 2024-07-16 11:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3541.00 | Comm: 0.35 | PnL: 36.00\n",
|
|||
|
|
" 2024-07-22 11:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3474.00 | Comm: 0.35\n",
|
|||
|
|
" 2024-07-23 11:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3418.00 | Comm: 0.34 | PnL: 56.00\n",
|
|||
|
|
" 2024-07-25 21:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3334.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-07-25 22:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3381.00 | Comm: 0.34 | PnL: -47.00\n",
|
|||
|
|
" 2024-07-26 11:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3385.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-07-30 22:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3281.00 | Comm: 0.33 | PnL: 104.00\n",
|
|||
|
|
" 2024-08-01 13:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3345.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-08-02 14:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3366.00 | Comm: 0.34 | PnL: -21.00\n",
|
|||
|
|
" 2024-08-05 10:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3363.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-08-05 13:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3389.00 | Comm: 0.34 | PnL: -26.00\n",
|
|||
|
|
" 2024-08-05 21:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3355.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-08-08 10:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3290.00 | Comm: 0.33 | PnL: 65.00\n",
|
|||
|
|
" 2024-08-08 11:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3291.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-08-12 13:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3227.00 | Comm: 0.32 | PnL: 64.00\n",
|
|||
|
|
" 2024-08-12 14:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3230.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-08-13 22:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3162.00 | Comm: 0.32 | PnL: 68.00\n",
|
|||
|
|
" 2024-08-14 09:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3165.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-08-16 21:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3061.00 | Comm: 0.31 | PnL: 104.00\n",
|
|||
|
|
" 2024-08-20 11:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3154.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-08-20 21:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3191.00 | Comm: 0.32 | PnL: -37.00\n",
|
|||
|
|
" 2024-08-20 22:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3188.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-08-21 13:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3210.00 | Comm: 0.32 | PnL: -22.00\n",
|
|||
|
|
" 2024-08-22 21:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3178.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-08-26 09:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3216.00 | Comm: 0.32 | PnL: -38.00\n",
|
|||
|
|
" 2024-08-27 09:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3253.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-08-27 14:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3285.00 | Comm: 0.33 | PnL: -32.00\n",
|
|||
|
|
" 2024-08-27 22:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3256.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-08-29 13:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3278.00 | Comm: 0.33 | PnL: -22.00\n",
|
|||
|
|
" 2024-08-29 14:00:00 | SELL | SHFE.rb2410 | Vol: 1 | Price: 3272.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-08-30 14:00:00 | CLOSE_SHORT | SHFE.rb2410 | Vol: 1 | Price: 3256.00 | Comm: 0.33 | PnL: 16.00\n",
|
|||
|
|
" 2024-09-02 22:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3237.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-09-03 13:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3181.00 | Comm: 0.32 | PnL: 56.00\n",
|
|||
|
|
" 2024-09-12 21:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3192.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-09-13 10:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3213.00 | Comm: 0.32 | PnL: -21.00\n",
|
|||
|
|
" 2024-09-18 09:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3192.00 | Comm: 0.32\n",
|
|||
|
|
" 2024-09-19 22:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3221.00 | Comm: 0.32 | PnL: -29.00\n",
|
|||
|
|
" 2024-09-26 13:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3283.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-09-26 21:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3309.00 | Comm: 0.33 | PnL: -26.00\n",
|
|||
|
|
" 2024-10-08 09:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3701.00 | Comm: 0.37\n",
|
|||
|
|
" 2024-10-08 11:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3542.00 | Comm: 0.35 | PnL: 159.00\n",
|
|||
|
|
" 2024-10-16 22:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3463.00 | Comm: 0.35\n",
|
|||
|
|
" 2024-10-17 13:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3356.00 | Comm: 0.34 | PnL: 107.00\n",
|
|||
|
|
" 2024-10-21 21:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3361.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-10-25 21:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3383.00 | Comm: 0.34 | PnL: -22.00\n",
|
|||
|
|
" 2024-10-28 13:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3472.00 | Comm: 0.35\n",
|
|||
|
|
" 2024-10-29 13:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3415.00 | Comm: 0.34 | PnL: 57.00\n",
|
|||
|
|
" 2024-10-29 22:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3444.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-11-04 13:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3400.00 | Comm: 0.34 | PnL: 44.00\n",
|
|||
|
|
" 2024-11-05 11:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3447.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-11-06 11:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3389.00 | Comm: 0.34 | PnL: 58.00\n",
|
|||
|
|
" 2024-11-07 14:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3428.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-11-11 13:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3341.00 | Comm: 0.33 | PnL: 87.00\n",
|
|||
|
|
" 2024-11-12 09:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3336.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-11-13 14:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3362.00 | Comm: 0.34 | PnL: -26.00\n",
|
|||
|
|
" 2024-11-15 10:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3269.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-11-19 14:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3290.00 | Comm: 0.33 | PnL: -21.00\n",
|
|||
|
|
" 2024-11-19 21:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3321.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-11-22 13:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3275.00 | Comm: 0.33 | PnL: 46.00\n",
|
|||
|
|
" 2024-11-25 10:00:00 | SELL | SHFE.rb2501 | Vol: 1 | Price: 3317.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-11-29 11:00:00 | CLOSE_SHORT | SHFE.rb2501 | Vol: 1 | Price: 3338.00 | Comm: 0.33 | PnL: -21.00\n",
|
|||
|
|
" 2024-12-06 10:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3324.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-12-09 21:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3396.00 | Comm: 0.34 | PnL: -72.00\n",
|
|||
|
|
" 2024-12-13 09:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3393.00 | Comm: 0.34\n",
|
|||
|
|
" 2024-12-16 11:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3344.00 | Comm: 0.33 | PnL: 49.00\n",
|
|||
|
|
" 2024-12-19 11:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3281.00 | Comm: 0.33\n",
|
|||
|
|
" 2024-12-24 21:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3309.00 | Comm: 0.33 | PnL: -28.00\n",
|
|||
|
|
" 2025-02-05 11:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3323.00 | Comm: 0.33\n",
|
|||
|
|
" 2025-02-06 11:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3350.00 | Comm: 0.34 | PnL: -27.00\n",
|
|||
|
|
" 2025-02-10 11:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3321.00 | Comm: 0.33\n",
|
|||
|
|
" 2025-02-11 22:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3272.00 | Comm: 0.33 | PnL: 49.00\n",
|
|||
|
|
" 2025-02-26 13:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3332.00 | Comm: 0.33\n",
|
|||
|
|
" 2025-03-04 10:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3271.00 | Comm: 0.33 | PnL: 61.00\n",
|
|||
|
|
" 2025-03-04 11:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3276.00 | Comm: 0.33\n",
|
|||
|
|
" 2025-03-10 11:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3228.00 | Comm: 0.32 | PnL: 48.00\n",
|
|||
|
|
" 2025-03-24 10:00:00 | SELL | SHFE.rb2505 | Vol: 1 | Price: 3190.00 | Comm: 0.32\n",
|
|||
|
|
" 2025-03-25 13:00:00 | CLOSE_SHORT | SHFE.rb2505 | Vol: 1 | Price: 3217.00 | Comm: 0.32 | PnL: -27.00\n",
|
|||
|
|
" 2025-04-10 14:00:00 | SELL | SHFE.rb2510 | Vol: 1 | Price: 3145.00 | Comm: 0.31\n",
|
|||
|
|
" 2025-04-16 11:00:00 | CLOSE_SHORT | SHFE.rb2510 | Vol: 1 | Price: 3098.00 | Comm: 0.31 | PnL: 47.00\n",
|
|||
|
|
" 2025-04-25 22:00:00 | SELL | SHFE.rb2510 | Vol: 1 | Price: 3147.00 | Comm: 0.31\n",
|
|||
|
|
" 2025-04-29 13:00:00 | CLOSE_SHORT | SHFE.rb2510 | Vol: 1 | Price: 3100.00 | Comm: 0.31 | PnL: 47.00\n",
|
|||
|
|
" 2025-05-06 10:00:00 | SELL | SHFE.rb2510 | Vol: 1 | Price: 3091.00 | Comm: 0.31\n",
|
|||
|
|
" 2025-05-07 09:00:00 | CLOSE_SHORT | SHFE.rb2510 | Vol: 1 | Price: 3118.00 | Comm: 0.31 | PnL: -27.00\n",
|
|||
|
|
" 2025-05-08 14:00:00 | SELL | SHFE.rb2510 | Vol: 1 | Price: 3060.00 | Comm: 0.31\n",
|
|||
|
|
" 2025-05-12 21:00:00 | CLOSE_SHORT | SHFE.rb2510 | Vol: 1 | Price: 3106.00 | Comm: 0.31 | PnL: -46.00\n",
|
|||
|
|
" 2025-05-14 10:00:00 | SELL | SHFE.rb2510 | Vol: 1 | Price: 3114.00 | Comm: 0.31\n",
|
|||
|
|
" 2025-05-19 13:00:00 | CLOSE_SHORT | SHFE.rb2510 | Vol: 1 | Price: 3066.00 | Comm: 0.31 | PnL: 48.00\n",
|
|||
|
|
"正在计算绩效指标...\n",
|
|||
|
|
"total_return: 0.017663100000000487, annualized_return:0.012297290879008438, 252 / total_days:0.6980609418282548\n",
|
|||
|
|
"绩效指标计算完成。\n",
|
|||
|
|
"\n",
|
|||
|
|
"--- 回测绩效报告 ---\n",
|
|||
|
|
"初始资金 : 100000.00\n",
|
|||
|
|
"最终资金 : 101766.31\n",
|
|||
|
|
"总收益率 : 1.77%\n",
|
|||
|
|
"年化收益率 : 1.23%\n",
|
|||
|
|
"最大回撤 : 0.32%\n",
|
|||
|
|
"夏普比率 : 1.13\n",
|
|||
|
|
"卡玛比率 : 3.89\n",
|
|||
|
|
"总交易次数 : 90\n",
|
|||
|
|
"总实现盈亏 : 898.00\n",
|
|||
|
|
"交易成本 : 29.69\n",
|
|||
|
|
"\n",
|
|||
|
|
"--- 交易详情 ---\n",
|
|||
|
|
"盈利交易次数 : 24\n",
|
|||
|
|
"亏损交易次数 : 21\n",
|
|||
|
|
"胜率 : 53.33%\n",
|
|||
|
|
"盈亏比 : 2.11\n",
|
|||
|
|
"平均每次盈利 : 64.00\n",
|
|||
|
|
"平均每次亏损 : -30.38\n",
|
|||
|
|
"正在绘制绩效图表...\n"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABWUAAAPdCAYAAADiWgoIAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4U2X/x/FPuhdDKFNAAW1B9lBkVGQ6UBFwD3CDv8c9wYEDFURw4npcCE4eAUEEFJQpe4nsJVh2Syl0N03O749jkobukSZN36/r4kqbnJxzJ7kb0k+/53tbDMMwBAAAAAAAAACoEAHeHgAAAAAAAAAAVCWEsgAAAAAAAABQgQhlAQAAAAAAAKACEcoCAAAAAAAAQAUilAUAAAAAAACACkQoCwAAAAAAAAAViFAWAAAAAAAAACoQoSwAAAAAAAAAVCBCWQAAAAAAAACoQISyAAC/0bt3b8XGxrr9a926tS699FI98sgjWrdunbeHmMeePXv0f//3f+ratatatmyp2NhYvffee6Xe38GDBxUbG6vevXvnuc3x/Bw8eLAsQy6W/F6L/P7NmDHD42MpzMiRI31iHL6oNM/NjBkz8v0Z7NKli6688ko9/vjj+v7775WamurBkXtfYT+H/u6PP/7QqFGjdNlll6ljx45q3bq1evTooTvvvFOTJ09WUlKSt4foVV9++aViY2P1yy+/FLrdF1984fwZmjp1aqHbrl69WrGxsbr99tvz3ObYR2nt3btXY8eO1bXXXqsuXbqoVatW6tKli2688UZNnDhRe/fuLfW+UXbr1q1TbGysxo8f7+2hAABKIcjbAwAAoLx17NhR55xzjiTp9OnT2rJli+bNm6f58+fr6aef1p133unxMcyYMUOjRo3SoEGDNG7cuHy3SU9P13333adDhw45g4vAwEC1bNnS4+OrKLlfi/w0adKkAkdTfMV5/VCwiIgIXXbZZZIku92ulJQUHTx4UHPnztWcOXM0btw4Pfroo7r99ttlsVi8PFqUh6SkJD3++ONasWKFJOnss89Wly5dFBERoYSEBG3cuFErVqzQO++8o8mTJ6tdu3ZeHnHFS0pK0qRJk9SmTRvnz0dBfvjhB+fX06dPzzdw9aScnByNHz9eU6dOld1uV82aNdW6dWvVrFlTKSkp2rp1qzZt2qRPP/1Uzz77rG677bYKHZ9DZXuvfu+99zRp0iQ98MADevDBB8u8v86dO+vSSy/VlClTdMMNN+jcc88t+yABABWGUBYA4Heuv/56DR482Pl9VlaWRo8erR9//FFvvPGGLr30UjVt2tSLIzT99ddfOnTokDp06KDvvvvO48ebPHmyrFar6tWr5/FjOZz5Wviaxx57TPfee6/q1q3r7aH4lbPOOivfgOT48eP69NNPNWXKFL366qs6evSonnrqKS+MEOUpJSVFt9xyi/7++281a9ZMY8aMUefOnd22yc7O1syZM/Xee+8pISHBSyP1rkmTJun06dNFhnGbNm3Snj17VL16deXk5Gj79u3aunWrWrVqVUEjlZ588knNnTtXUVFRevbZZzVw4EAFBgY6bzcMQ3/88YfefPNNHThwoMLGhbwefPBBLV68WBMmTNCkSZO8PRwAQAnQvgAA4PdCQ0M1evRoRUREyGazacGCBd4ekiTpyJEjklRhlS1NmjRR8+bNFRwcXCHHqwzq1q2r5s2bq1q1at4eSpVQt25dPfPMM3r++eclSZ999plPthVByYwZM0Z///23zj77bH377bd5AllJCgkJ0Y033qgff/xRzZo188Iovev06dOaOXOm6tWrp7i4uEK3dVTJDhgwQJdffrnbdRXhhx9+0Ny5cxUcHKzPP/9cgwcPdgtkJclisahHjx76/vvvdeWVV1bY2JBX69at1aJFC/32228V0p4IAFB+CGUBAFVCZGSkszr2zF9ali1bpuHDh6tr167ONgKPPPKI/vrrr3z3dfvttys2NlarV6/WunXrNGLECF188cVq0aKFZsyYod69e2vUqFGSpJkzZ7r117z99tud/f+efvrpfLfJLTk5WW+++aYGDBigdu3aqUOHDho8eLA++eQTZWZmlug5KKynbEZGhv773/9q0KBB6tChg9q1a6cBAwborbfe0qlTp0p0nLLas2ePHnroIXXp0kVt27bVVVddpc8++0w2m63Ax1BU38Tcr1lu+fVNLer1s9vt6tOnj2JjY7Vx48YCj/niiy+WqNdfamqqpk2bpgceeED9+/dX+/bt1b59e1199dV66623dPr06Xzvl/s5WbVqle666y5deOGFatu2rQYNGqQff/yxwGMmJyfr1VdfVa9evZz9l19++WUlJycXa8yldeutt6pNmzaSpE8//dTtNkdf2pEjRzrH17dvX7Vu3drtFO4VK1ZozJgxGjhwoLp06aLWrVvrkksu0SOPPKLNmzfnOeaUKVMUGxurV155Jc9t9957r2JjY9W9e3cZhuF2248//qjY2Nh8K3oXLVqk2267TR06dFCnTp10yy23aOHChUU+/r1792rUqFHO5/2iiy7SsGHDNHfuXI+OO3fvUavVqv/+978aMGCA2rZtqy5duuiBBx4ocY/Q+Ph4zZkzR5I0atQo1axZs9Dto6Oj3ULZonoX554PBV2f3zxZtmyZYmNjdcUVVxQ4lpycHHXv3l2xsbHasWOH222ZmZn6/PPPdcMNN6hz587OlgPjx4/XyZMnC32MBT2O9PR0DRw4UAEBBf8Klp6e7pwH1113nYYMGSJJmjNnjrKyskp83JIyDEMfffSRJOmmm24qss1EcHCwOnTokOf6zZs36+GHH1aPHj3UunVrde3aVSNGjNAff/yR735yz4P4+Hg9+eST6t69u1q3bq2+ffvqrbfeUnZ2ttt9inqvdijq/2yp9O+/kjmPfvjhB91xxx1u70V33HGHWz/g2NhYZyXrpEmT3Mabe34fP35cr7zyii677DK1adNG7dq1U8+ePTVs2DB99tln+Y5h0KBBstvt+vbbbwscJwDA99C+AABQZTgWFwoJCXFe9/bbb+vDDz+UxWJRhw4d1LBhQ+3du1fz5s3Tr7/+qpdfflnXXXddvvubP3++vvvuOzVr1kzdunXTqVOnFBISossuu0ybNm3Shg0b1KRJE3Xq1Ml5n2bNmik6OlqDBg3SgQMH8t3GIT4+XsOGDdOhQ4dUq1Yt9ezZU1arVatXr9aECRM0b948ffHFF6pRo0aZnpfk5GTdcccd2r59u6KionTxxRcrODhYa9as0UcffaQ5c+boyy+/VKNGjcp0nOJYt26d7r33XqWnp6tx48bq3r27Tp48qbfeekt//vmnx48vqcjXLyAgQLfddpvGjRunr776Kt9AIjU1VbNmzVJAQIBuueWWYh13x44dev7551WrVi01bdpUrVq1cvZE/uijjzRv3jx9//33Ouuss/K9//Tp0/Xhhx/qggsuUFxcnA4dOqRNmzbp6aefdr7GuSUmJurWW2/V/v37VaNGDfXq1Ut2u10//fSTli1bpvPOO6/4T1opXHPNNfrrr7+0evVq5eTkKCjI/WPpyZMnNWTIEKWkpKhTp05q1aqVW5X3Cy+8oCNHjuj8889Xx44dFRQUpH379mnevHlasGCB3nzzTbe+nd26dZMkZ89TB6vV6qzWTUxM1M6dO9WiRQvn7Y7tHfd3mDx5ssaOHStJatu2rZo0aaL9+/frP//5T6F9qxcvXqyHHnpIWVlZatq0qfr3768TJ05o7dq1WrVqlZYvX67XXnvNY+N23Pe+++7Txo0b1blzZzVv3lybN2/WggULtHr1as2cObPYP++LFi2SzWZT9erVvbKwWUHzpHv37qpfv7727dunTZs2qX379nnuu3TpUiUmJqpVq1Zuz92xY8d0zz33aNeuXapZs6batGmjyMhIbdu2TZ999pnmz5+vqVOn6uyzzy72OB1hfX6vR25z585VWlqac5E8yTybYv/+/fr111919dVXF/uYpbFz507Fx8dLMoO+0pg2bZpeeOEF2e12XXDBBerSpYsOHTqkRYsWadGiRXrwwQf1wAMP5Hvf7du
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1400x1000 with 2 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABW0AAAKyCAYAAACuWPzHAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd8FGX+B/DPzJYkm97oVSAJEOpRBUVBLKfcgQ1Oiuh5gv1soJ4/DxuoJ+oJ2DhEEVBUytnAE0QE6QjSkVBDTyE9my0zvz92Z3Ymu9lsQpLdJJ/363XH7MwzM89knx2T737n+wiyLMsgIiIiIiIiIiIiopAgBrsDREREREREREREROTBoC0RERERERERERFRCGHQloiIiIiIiIiIiCiEMGhLREREREREREREFEIYtCUiIiIiIiIiIiIKIQzaEhEREREREREREYUQBm2JiIiIiIiIiIiIQgiDtkREREREREREREQhhEFbIiIiIiIiIiIiohDCoC0RETVqp06dQmpqKlJTU3Hq1Cm/bYcOHYrU1FQsW7asTvo2a9YspKamYtasWXVyvpo+p/KzHTp0aA30rO7Mnz9fHROffPJJsLsTVGfPnsWbb76J22+/HQMGDEDXrl3Rp08fjBo1Ci+99BJ2797ttY/ys2soxo8fr16T8r/09HQMHjwYkydPxo8//lit4wbj810d06dPR1paGvbs2VNhmyNHjmDGjBkYOXIk+vfvj65du6J///4YPXo0Zs6ciSNHjtRhj6k+q879w9dnNDU1FT169MANN9yAF198EWfOnKmlHteMzMxMpKen45FHHgl2V4iIKIQwaEtERESk8eWXX6rLS5cuDWJPqmfZsmVITU3FU089dUnHmTt3LoYPH4733nsPhw8fRlpaGq6//nr06dMH+fn5+OSTT3Dbbbfhtddeq6Geh7a0tDSMGjUKo0aNwtChQxEeHo61a9fivvvuw0svvRTs7tWKI0eOYNGiRbj22mvRrVs3r+0OhwPTp0/HTTfdhI8++ghnz55Feno6rr/+evTo0QOnTp3CBx98gJtuugkLFy4MwhXUrfoSiK9MTd1D6pr2Mzpy5Ej06dMH2dnZWLhwIUaMGOHzS6ZQ0bp1a9x+++1YtWoVtm7dGuzuEBFRiDAGuwNERETUMDVt2hTfffcdTCZTsLsSsF27diEjIwMxMTFwOBw4cOAA9u3bh65duwa7a3Xq9ddfx9y5c2EymTB16lSMGzcOZrNZ12bXrl148803cfz48eB0so5dc801eOihh9TXkiThrbfewvvvv49PPvkEw4YNw8CBAwM+3tixY/HHP/4R8fHxtdHdGvHaa6/B4XDorlvrySefxHfffYeoqCj84x//wJ///GcYDAZ1uyzL+OWXX/DGG2/gxIkTddVtaqTKf0YBoLCwEJMnT8b27dsxbdq0OntSpjruu+8+fP7555gxYwaWL18e7O4QEVEIYKYtERER1QqTyYQOHTqgTZs2we5KwJQs2xtvvBHXX3+9bl1jsWnTJsydOxcA8Oabb+Luu+/2CtgCQM+ePfHRRx/h7rvvrusuhgRRFPHII4+gdevWAICVK1dWaf+EhAR06NABCQkJtdG9S3bs2DGsW7cOPXv2RKdOnby2f/nll+qXMh9++CFuvvlmXcAWAARBwODBg7FkyRL88Y9/rKuuE6mio6PxwAMPAAD27duHwsLCIPeoYsnJybjyyiuxf/9+bNu2LdjdISKiEMBMWyIioks0fvx4bN26FQsWLEBMTAzmzJmDbdu2obi4GG3atMGtt96Ku+66C4IgeO1rtVoxd+5cfP311zhz5gzi4uIwaNCggOra7d27F/Pnz8eOHTuQnZ0Ni8WCbt26YcKECRgyZIhX+6FDh+L06dNYs2YNDh48iAULFuDgwYPIz8/HggUL0L9/f5/nefvttzFnzhyMHj0aL7zwgs82u3fvxm233YYmTZpg7dq1MBqNOHXqFIYNG4aWLVt61f1UahYeOnQI33//PT766CMcOnQIkiQhLS0N9913n89rAIDTp09j1qxZWL9+PQoKCtC8eXPcdNNNmDRpEu655x71vajoeipSUlKC7777DgBw6623wmq1YtmyZfjmm2/w1FNPISwszOd+K1euxJIlS3DgwAEUFRUhKioKiYmJ6N27N8aNG4e0tDS1bWFhIf7zn//gxx9/RGZmJhwOB+Li4tCqVSsMHDgQ999/v1dmcn5+Pj7++GOsWbMGJ0+ehCRJaNOmDW644QbcddddiIiIUNsq7zEALF++XJet1a9fv4Bq9L7zzjvqsYYPH+63rSAI6NOnT6XHVOTl5eHDDz/EmjVrcOrUKYiiiPbt2+OGG27A+PHjER4e7rXPxo0bsWDBAuzevRv5+fmwWCyIj49H9+7dMXr0aPTt29drn02bNmHRokXYtWsX8vLyEB0djd69e+Oee+5Br169Au5vZQwGAzp37ozMzEz15w4E9lmbNWsWZs+ejQcffNBnJuuxY8fw8ccfY9OmTTh37hwMBgOaNWuGfv364Y477kBKSoqufVXGSSAWLVoEWZYxatQor22yLOO9994DAIwZMwY9evTweyyTyeTz5757927MmzcPO3bsUN+nHj16YPz48Rg0aJBX+6eeegrLly/HjBkz0LdvX7z99tvYuHEj8vPz0axZM9x444144IEHfH7JALjumZ988gm2bduGrKwsREREoFmzZhg0aBDGjRuHli1bqm3/97//Yd26dfjtt99w/vx5WK1WJCcno3///vjb3/6Gyy67THdsbR3W2bNnY/bs2errUaNG4ZVXXlFfOxwOLF++HF999RUOHTqEkpISNGnSBFdccQUmT56M5s2b6469ZcsWTJgwAf369cOHH36I+fPn47///S8yMzMRERGBvn374tFHH0WHDh28rnnjxo1Ys2YNtm/fjnPnzqG4uBgJCQno3bs37r77bnTv3l3Xvqr3kFWrVuGLL77Avn37UFRUhPj4ePTv3x+TJ09Gx44dfb4PO3fuxJw5c7Br1y44nU60b98ed9xxB2699Vaf7S9VUlKSuuxwOHTbcnNz8c0332D9+vU4cuQIsrOzYTQa0a5dO1x//fW48847fd77tf8NW7p0KT7//HNkZGSgqKgIa9asQatWrap1v7/55puxZs0aLFq0yOe9jYiIGhcGbYmIiGrIhg0bMH/+fLRp0waDBg1CVlYWduzYgVdffRVnz57FP/7xD1370tJSTJw4Ebt27YLFYsHgwYMRFhaGDRs24KeffsJVV11V4bk+/vhjvPLKK5AkCZ07d0b37t2RnZ2NLVu2YMOGDXjooYfw4IMP+tx3/vz5WLhwIdLT03HFFVfgwoULXhlyWn/5y1/wwQcf4Ouvv8YTTzyBmJgYrzaLFi0CAIwePRpGY+C/Xrz99tt455130KtXLwwZMgRHjx7Fzp07MWnSJMyaNcsraJiRkYFx48bh4sWLaNKkCYYNG4bS0lLMnz8fmzdvhiRJAZ+7vO+++w7FxcXqRFMA0K5dOxw/fhz/+9//MGLECK99Zs+ejVmzZsFoNKJXr15o2rQpCgsLcfbsWXz55Zfo2LGjGrQtLS3FHXfcgd9//x0JCQkYMGAALBYLsrKycOzYMbzzzju46667dH/EZ2Rk4J577sHZs2eRnJyMP/zhDzAajdizZw/+/e9/43//+x8++eQTREdHAwCuu+467Nq1C7/++ivatGmDP/zhD+qxygeZfCkoKMD27dsBwGew7lJkZmbizjvvxOnTp5GQkIAhQ4bAbrdjy5YteP3117Fy5UrMnz8fsbGx6j7Lly/H008/DQDo3r07+vfvD6vVivPnz+O7775DfHy8V2Dj1VdfxYcffghRFJGeno4//OEPOHv2LNasWYO1a9fixRdfxC233FJj11VUVAQAPgOFVf2sKb7++ms888wzsNlsaNGiBYYMGQJJkpCZmYnPPvsMiYmJuqBtVcdJINasWQMAuPzyy722HTp0CJmZmQCqP04+//xz/POf/4QkSejSpQv69++P06dPY+3atVi7dq3fe9iBAwfw8ssvIzY2Fn379kV+fj5+/fV
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1400x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"name": "stdout",
|
|||
|
|
"output_type": "stream",
|
|||
|
|
"text": [
|
|||
|
|
"图表绘制完成。\n",
|
|||
|
|
"{'初始资金': 100000.0, '最终资金': np.float64(101766.31000000006), '总收益率': np.float64(0.017663100000000487), '年化收益率': np.float64(0.012297290879008438), '最大回撤': np.float64(0.003162276839125643), '夏普比率': np.float64(1.133569794823866), '卡玛比率': np.float64(3.888745832388473), '总交易次数': 90, '交易成本': 29.69, '总实现盈亏': 898.0, '胜率': 0.5333333333333333, '盈亏比': 2.1065830721003134, '盈利交易次数': 24, '亏损交易次数': 21, '平均每次盈利': 64.0, '平均每次亏损': -30.38095238095238, 'initial_capital': 100000.0, 'final_capital': np.float64(101766.31000000006), 'total_return': np.float64(0.017663100000000487), 'annualized_return': np.float64(0.012297290879008438), 'max_drawdown': np.float64(0.003162276839125643), 'sharpe_ratio': np.float64(1.133569794823866), 'calmar_ratio': np.float64(3.888745832388473), 'total_trades': 90, 'transaction_costs': 29.69, 'total_realized_pnl': 898.0, 'win_rate': 0.5333333333333333, 'profit_loss_ratio': 2.1065830721003134, 'winning_trades_count': 24, 'losing_trades_count': 21, 'avg_profit_per_trade': 64.0, 'avg_loss_per_trade': -30.38095238095238}\n"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA/AFJREFUeJzs3Xd4VGX6//HPmZoOhEBC6EVApYgFFUEUG4K961rBsq7oWtBFf66VtX3Fgrg27K66trWiqKiIXVHAAioYQFpIgfTp5/fHYYYJNYQkZ2byfl2XlyfznJlzz8yZkHPP/dyPYZqmKQAAAAAAAKCFOewOAAAAAAAAAK0TiSkAAAAAAADYgsQUAAAAAAAAbEFiCgAAAAAAALYgMQUAAAAAAABbkJgCAAAAAACALUhMAQAAAAAAwBYkpgAAAAAAAGALElMAAAAAAACwBYkpAEBKOuuss3TWWWfZHcZOSYXn0Jp8/fXX6tevn77++usmfdx+/frpgQceaNLHTHSbnvsrVqxQv3799Nprr7VoHJMmTdKoUaNa9JgAALQ2JKYAANhg0qRJ6tev32b/jR49epv3e//999WvXz+9/PLLW93n888/V79+/fTMM880ddgpxe/366mnntLJJ5+svfbaSwMHDtQRRxyhW265RUVFRXaH12xmz56dcMmnTT8He+65p84880x98skndoeWcM4666x6r9XQoUN14okn6pVXXlEkEtnhx3vttdfUr18//fjjj80QLQAAicVldwAAADSHxx9/vFH383g8mjx5cr3bsrOzt3mfgw46SNnZ2Xrrrbd08sknb3Gft99+W06nU2PHjm1UXK1BeXm5zj//fP388886+OCDddRRRykjI0NFRUWaMWOGXnrpJf300092h9ksZs+erf/85z+69NJLNxtbsGCBnE6nDVFJBxxwgI499liZpqlVq1bphRde0F//+lc99thjGjFiRIvF0blzZy1YsEAuV+L+6VpQUKArr7xSkrRu3Tq9/vrr+n//7/9p6dKlmjhxos3RAQCQuBL3X3cAADZRW1urjIyMBu3r8XgadQyXy6Vjjz12h+7j8Xh0xBFH6LXXXlNxcbHy8/Prjfv9fn3wwQcaNmyY2rdv36i4WoNrr71WCxcu1NSpU3XEEUfUG7v88st177332hSZvbxer23H7tGjR73PwxFHHKExY8bomWeeadHElGEYtr4ODZGdnV3vtTr11FM1evRo/ec//9Hf//53ud1uG6MDACBxMZUPAJCQHnjgAfXr10+LFy/WVVddpX322UdnnHGGJKmkpETXXnutDjzwQA0YMEDDhw/XxRdfrBUrVsTuvzP9mcLhsKqrq3foPsccc4wikYhmzJix2dgnn3yiqqoqHX300ZKkV199VWeffbb2339/DRgwQGPGjNHzzz+/3WNEp/fEP09p672N5s+fr/Hjx2uvvfbS4MGDdeaZZ2ru3LnbPEZpaal22203TZs2bbOxP/74Q/369dNzzz0nSQoGg5o2bZoOP/xwDRw4UPvuu69OP/10ff7559t9LpuaP3++PvnkE5100kmbJaUkK/n3j3/8I/bz1t7fTXsCRXsTPf744/rPf/6jQw45RIMHD9a4ceO0evVqmaapBx98UAceeKAGDRqkiy++WOvXr6/3mFvr8TRq1ChNmjRpm8/ru+++02WXXaaDDjpIAwYM0MiRI3XbbbfJ5/PVi/k///lP7FjR/7Z0/Pfee0/9+vXTN998s9mxXnzxRfXr10+//fZb7LYlS5bosssu09ChQzVw4ECdcMIJmjVr1jZj3pbevXurXbt2Wr58eb3bA4GApk6dqsMOOyz2PO+66y4FAoF6+zX23N+0x1T0nN/Sf5v2hJo9e7bOOOMM7bHHHhoyZIguvPBC/f7775sd48MPP9RRRx2lgQMH6qijjtIHH3ywoy9PPenp6Ro8eLBqa2tVXl4uyXovb7nlltixBgwYoLFjx+rTTz/dqWMBAJDMqJgCACS0v//97+revbuuuOIKmaYpSbr00ku1ePFinXnmmercubPKy8v1+eefa/Xq1erSpctOHa+urk577bWX6urq1KZNG40dO1YTJ05UZmbmNu+3zz77qKCgQG+99ZbOO++8emNvv/220tPTdeihh0qSXnjhBe2yyy4aNWqUXC6XPv74Y918880yTVN/+ctfdir+qC+//FIXXHCBBgwYoAkTJsgwDL322ms655xz9Pzzz2vQoEFbvF9eXp722Wcfvfvuu5owYUK9sRkzZsjpdMZ6bk2bNk2PPPKITj75ZA0aNEjV1dX66aef9PPPP+uAAw7YoXg/+ugjSdrharWGeuuttxQMBnXWWWdp/fr1mj59ui6//HLtt99++vrrr3XBBRdo2bJleu6553TnnXfq9ttvb5Ljvvfee/L5fDr99NPVtm1bLViwQM8995zWrFmjqVOnSrIqa9auXavPP/9cd9111zYf76CDDlJGRobeffddDR06tN7YjBkztMsuu6hv376SpN9//12nn3668vPzdcEFF8Tud8kll+iBBx7QYYcdtsPPp6qqSpWVlerWrVvstkgkoosvvlhz587VKaecot69e+u3337T008/raVLl+rf//53bN+mOvd79+692WtVVVWlO+64Q7m5ubHbXn/9dU2aNEnDhw/XxIkTVVdXpxdeeEFnnHGG/ve//8V+X3z22We69NJL1adPH1111VVat26drr32WhUUFOzwaxRvxYoVcjqdysnJid02d+5cvf/++zrjjDOUmZmpZ599Vpdddpk+/vhjtWvXbqeOBwBAMiIxBQBIaP3799eUKVNiP1dWVuqHH37QNddco/Hjx8duv+iii3b6WB06dND555+v3XbbTaZpas6cOXr++ee1aNEiPfvss9vsb+NwODR27Fg9/vjjKioqUs+ePSVJ1dXVmj17tg477LBYcuu5555TWlpa7L5nnnmmxo8fryeffLJJElOmaeqmm27Svvvuq+nTp8swDEnSaaedprFjx+q+++7TE088sdX7jxkzRjfccIN+++23WJJDkt59913ts88+ysvLk2RVgo0cOVK33nrrTse8ZMkSSap3vKZUXFys999/P9YvLBKJ6JFHHpHP59Orr74ae2/XrVunt956SzfffHOjp4PGmzhxYr33+tRTT1X37t11zz33aNWqVSosLNSQIUPUo0cPff7559tNzKWlpWnUqFGaOXOmrr/++ljvqZKSEn377bf1kon/+te/1KlTJ7366qux53LGGWfo9NNP1913392gxJTf749V+6xatUr33XefwuFwvaq2t956S1988YWeffZZ7b333rHbd9llF9144436/vvvteeee0pqunM/Ly+v3mtlmqYuvvhiud1u3XHHHZKkmpoa/etf/9LJJ59c7xw9/vjjNXr0aD3yyCOx2++++261b99ezz//fOwcGTp0qMaNG6fOnTs3KKZwOBx7rdatW6cXXngh1i8tPT09tt+SJUs0Y8aMWHJv33331bHHHqt33nlHZ555ZoNfAwAAUgVT+QAACe20006r93NaWprcbre++eYbVVRUNOmxrrrqKk2cOFFjxozR2LFjdccdd+iKK67Q999/r5kzZ273/sccc4wkq0IqaubMmfL7/bFpfNHnEFVVVaXy8nINHTpUf/75p6qqqnb6eSxcuFBLly7V0UcfrXXr1qm8vFzl5eWqra3V/vvvr2+//XabK4Uddthhcrlc9aYl/vbbb1q8eLHGjBkTuy0nJ0e///67li5dutMxR6dObq8yrbFGjx5dr4l9tGLsmGOOqZdwHDRokILBoIqLi5vkuPHvdXRK15AhQ2Sapn755ZdGPeaRRx6psrKyetP5Zs6cqUgkEnt/1q9fr6+++kpHHnmkqqurY+fAunXrNHz4cC1durRBz/GVV17R/vvvr/33318nnniivvrqK51//vn1qgLfe+899e7dW7169Yodp7y8XPvtt58k1Zti2lzn/oMPPqiPP/5Yd9xxh/r06SNJ+uKLL1RZWamxY8fWi8vhcGjw4MGxuNauXauFCxfq+OOPr3eOHHDAAbHHaog//vgj9lq
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKcAAAK1CAYAAAAdTo3XAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4VGX6//HPmZoOJIFA6B2UIooNQRAbgr3r2rGu2MuqX9e+tp9YcW3YsLG2dUVRVFTE3gUVpINSUiF9+vn9cZiBDAEykORMkvfrurg8mfPMnHvmyZjMnfu5H8M0TVMAAAAAAACADRx2BwAAAAAAAIDWi+QUAAAAAAAAbENyCgAAAAAAALYhOQUAAAAAAADbkJwCAAAAAACAbUhOAQAAAAAAwDYkpwAAAAAAAGAbklMAAAAAAACwDckpAAAAAAAA2IbkFAAg6Z1++uk6/fTT7Q5jp7SE59CafPPNN+rfv7+++eabBn3c/v3765FHHmnQx0x28d/7f/31l/r3768333yzSeO47rrrNHbs2Ca9JgAAqB+SUwCAFql///5b/Xf22Wdv9X4ffPCB+vfvr9dee22rY7744gv1799f06ZNa4zQWwy/36/nnntOJ5xwgvbYYw8NHjxYhx56qG677TYtX77c7vAazZw5c5IuARX/Hth999112mmn6dNPP7U7tKRz+umn13qt9tprLx133HF6/fXXFYlEEn68N998U/3799f8+fMbIVoAAFoGl90BAACwPU8//XTC97n33nu3uO3XX3/VtGnTtN9++231fmPGjFFmZqZmzJihE044oc4x77zzjpxOpyZMmJBwXK1FaWmpzj33XP3222864IADdPjhhystLU3Lly/XzJkz9eqrr+rXX3+1O8xGMWfOHL300ku65JJLtjg3b948OZ1OG6KS9ttvPx111FEyTVNr1qzRK6+8ogsvvFBPPfWURo0a1WRxdO7cWfPmzZPLlby/hnbs2FFXXnmlJGn9+vV666239H//939asWKFrr76apujAwCg5Une3woAAC1adXW10tLS6jXW4/Ek/PhHHXXUFrd9++23MgxDhx9++Davdeihh+rNN99UQUGB8vLyap33+/368MMPNWLECOXk5CQcV2tx/fXXa8GCBXr44Yd16KGH1jp3+eWX64EHHrApMnt5vV7brt2jR49a74tDDz1U48eP17Rp05o0OWUYhq2vQ31kZmbWeq1OOukkjRs3Ti+99JIuu+wyud1uG6MDAKDlYVkfAKDRPfLII+rfv7+WLFmiq666SnvuuadOPfVUSVJRUZGuv/567b///ho0aJBGjhypiy66SH/99Vfs/g3RrykQCOiDDz7QnnvuqY4dO25z7JFHHqlIJKKZM2duce7TTz9VRUWFjjjiCEnSG2+8oTPOOEP77ruvBg0apPHjx+vll1/ebjzRpT6bP09p672OfvnlF02cOFF77LGHhg4dqtNOO00//PDDNq9RXFysXXbZRVOmTNni3LJly9S/f3+9+OKLkqRgMKgpU6bokEMO0eDBg7X33nvrlFNO0RdffLHd5xLvl19+0aeffqrjjz9+i8SUZCUA//GPf8S+3tr8xvcIivYqevrpp/XSSy/pwAMP1NChQ3XOOedo7dq1Mk1Tjz76qPbff38NGTJEF110kTZs2FDrMbfW82ns2LG67rrrtvm8vv/+e1166aUaM2aMBg0apNGjR+vOO++Uz+erFfNLL70Uu1b0X13Xf//999W/f399++23W1xr+vTp6t+/vxYtWhS7benSpbr00ku11157afDgwTr22GM1e/bsbca8Lb1791a7du20atWqWrcHAgE9/PDDOvjgg2PP895771UgEKg1bke/9+N7TkW/5+v6F98jas6cOTr11FO12267adiwYTr//PO1ePHiLa7x0Ucf6fDDD9fgwYN1+OGH68MPP0z05aklNTVVQ4cOVXV1tUpLSyVZc3nbbbfFrjVo0CBNmDBBn3322U5dCwCA1ojKKQBAk7nsssvUvXt3XXHFFTJNU5J0ySWXaMmSJTrttNPUuXNnlZaW6osvvtDatWvVpUuXBrv2nDlzVF5eriOPPHK7Y6MJrBkzZmzRn+qdd95RamqqDjroIEnSK6+8or59+2rs2LFyuVz65JNPdOutt8o0Tf3tb39rkNi/+uornXfeeRo0aJAmTZokwzD05ptv6swzz9TLL7+sIUOG1Hm/3Nxc7bnnnnrvvfc0adKkWudmzpwpp9OpcePGSZKmTJmiJ554QieccIKGDBmiyspK/frrr/rtt9+2uQyyLh9//LGkuqvXGsKMGTMUDAZ1+umna8OGDZo6daouv/xy7bPPPvrmm2903nnnaeXKlXrxxRd1zz336K677mqQ677//vvy+Xw65ZRT1LZtW82bN08vvvii1q1bp4cffliSVWFTWFioL774os6lpZsbM2aM0tLS9N5772mvvfaqdW7mzJnq27ev+vXrJ0lavHixTjnlFOXl5em8886L3e/iiy/WI488ooMPPjjh51NRUaHy8nJ169YtdlskEtFFF12kH374QSeeeKJ69+6tRYsW6fnnn9eKFSv073//Oza2ob73e/fuvcVrVVFRobvvvlvZ2dmx29566y1dd911GjlypK6++mrV1NTolVde0amnnqr//ve/sf9ffP7557rkkkvUp08fXXXVVVq/fr2uv/767Salt+evv/6S0+lUVlZW7LYffvhBH3zwgU499VSlp6frhRde0KWXXqpPPvlE7dq126nrAQDQmpCcAgA0mQEDBmjy5Mmxr8vLy/XTTz/p2muv1cSJE2O3X3DBBQ1+7RkzZsSW7G2Pw+HQhAkT9PTTT2v58uXq2bOnJKmyslJz5szRwQcfrPT0dEnSiy++qJSUlNh9TzvtNE2cOFHPPvtsgySnTNPULbfcor333ltTp06VYRiSpJNPPlkTJkzQgw8+qGeeeWar9x8/frxuuukmLVq0KJbokKT33ntPe+65p3JzcyVZFWGjR4/W7bffvtMxL126VJJqXa8hFRQU6IMPPlBmZqYkK6HyxBNPyOfz6Y033oj1Mlq/fr1mzJihW2+9dYeWhsa7+uqra831SSedpO7du+v+++/XmjVrlJ+fr2HDhqlHjx764osvtpucS0lJ0dixYzVr1izdeOONsV5URUVF+u6772olFP/1r3+pU6dOeuONN2LP5dRTT9Upp5yi++67r17JKb/fH6v6WbNmjR588EGFw+Fa74kZM2boyy+/1AsvvKDhw4fHbu/bt69uvvlm/fjjj9p9990lNdz3fm5ubq3XyjRNXXTRRXK73br77rslSVVVVfrXv/6lE044odb36DHHHKNx48bpiSeeiN1+3333KScnRy+//HLse2SvvfbSOeeco86dO9crpnA4HHut1q9fr1deeSXWPy01NTU2bunSpZo5c2Yswbf33nvrqKOO0rvvvqvTTjut3q8BAACtHcv6AABN5uSTT671dUpKitxut7799luVlZU12nUrKytjyZfNqx62JVph9c4778RumzVrlvx+f2xJn6RaH84rKipUWlqqvfbaS3/++acqKip2OvYFCxZoxYoVOuKII7R+/XqVlpaqtLRU1dXV2nffffXdd99tcwexgw8+WC6Xq9YSxUWLFmnJkiUaP3587LasrCwtXrxYK1as2OmYKysrJSmWwGto48aNiyUdJMUqx4488shaTbaHDBmiYDCogoKCBrnu5nMdXd41bNgwmaap33//fYce87DDDlNJSUmtpX2zZs1SJBKJzc+GDRv09ddf67DDDlNlZWXse2D9+vUaOXKkVqxYUa/n+Prrr2vffffVvvvuq+OOO05ff/21zj333FrVge+//7569+6tXr16xa5TWlqqffbZR5JqLTdtrO/9Rx99VJ988onuvvtu9enTR5L05Zdfqry8XBMmTKgVl8Ph0NChQ2NxFRYWasGCBTrmmGNqfY/st99+sceqj2XLlsVeq/Hjx+vFF1/UmDFjdOedd9YaN2LEiFqVZwMGDFBGRob+/PPPHX7+AAC0RlROAQCaTPwyPY/Ho6uvvlr33HO
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3XeYVOXZx/Hv9Nm+7C4sLL0IiHSJhSKKRkXsSTD2go2IBSGKxliJLRIbxor1jRKNGkUFo1hCFAuIYgEFpEhbtsDW6XPePw4z7LID23d2dn+f6+Li7JwzZ+6ZZwfm3HM/92MxDMNARERERERERESkhVnjHYCIiIiIiIiIiLRPSkyJiIiIiIiIiEhcKDElIiIiIiIiIiJxocSUiIiIiIiIiIjEhRJTIiIiIiIiIiISF0pMiYiIiIiIiIhIXCgxJSIiIiIiIiIicaHElIiIiIiIiIiIxIUSUyIiIiIiIiIiEhdKTImISLM499xzOffcc+MdRovYvHkzAwYM4LXXXot3KFJHs2bNYsKECU16ztdee40BAwawefPmJj1vaxbrd//hhx9mwIABLR7LgAEDePjhh1v8cUVERKRx7PEOQEREJGLlypW89tprrFy5kh9//JFgMMiPP/64z+NfeeUVnn76aTZv3kyXLl3qlAy7/PLLWbp0KZ988gmpqakxj5kxYwbvvvsuS5YsoUOHDo16Tm3Zpk2beOqpp/jkk0/YsWMHDoeD/v37M3HiRM444wzcbne8Q2wWjz32GP369eOYY46JdyiAmRC74YYboj/bbDays7MZM2YM06dPJzc3N47RtS6bN2/m6KOPjv5stVrJzc3loIMOYtq0aRx44IH1Pue5557Lzp07eeutt5oyVBERkXZDiSkREWkW8+bNq/d9Pv74Y/71r3/Rv39/unXrxoYNG/Z57Pz587nllls47rjjuPDCC1m2bBmzZ8/G4/Fw6aWX7vN+J598Mh9++CHvv/8+p556ao39Ho+HDz74gLFjxyoptR8fffQRV199NU6nk1NOOYX+/fsTCARYvnw5f/3rX1m7di133HFHvMNsFo8//jjHHXdcjcTUKaecwqRJk3A6nXGJ66qrrqJbt274/X6+/vprXn/9dZYvX85bb72Fy+VqsTimTp263/dga3DiiSdyxBFHEA6HWbduHS+99BL//e9/efnllxuUnBIREZGGU2JKRETqrLKykuTk5Dod25CL8zPPPJNLLrkEt9vN7bffvs/ElNfr5f777+fII4/koYceAmDy5MmEw2EeffRRzjjjDDIyMmLed8KECaSkpLBgwYKYianFixdTWVnJySefXO/424tffvmF6dOnk5eXx3PPPUenTp2i+84++2w2btzIRx99FL8A48Rms2Gz2eL2+EcccQRDhgwB4He/+x0dOnTgySefZPHixZxwwgktFofdbsdub90fMQcNGsQpp5wS/XnkyJFMnTqVl156idtvvz2OkYmIiLQ/6jElIiIxRfrErF27lhkzZvCrX/2Ks846C4CCggJuuOEGjjjiCAYPHszYsWOZOnVqtd46DekxlZOTU6fpX59//jm7du2KxhNx9tlnU1lZud+kiNvt5thjj+Wzzz6jqKioxv633nqLlJQUJkyYwK5du7jnnns46aSTGDFiBCNHjuTiiy9m9erVtca4r+cfq7dROBzm2WefZdKkSQwZMoTRo0dz8803U1JSst/HmDdvHgMGDGDLli019s2ZM4fBgwdHz7FhwwauvPJKxowZw5AhQzjiiCOYPn06ZWVltT6XvT311FNUVlbyl7/8pVpSKqJnz56cf/75wP77b+3dEyjyO7d+/XpmzpzJwQcfzGGHHcYDDzyAYRhs27aNqVOnMnLkSMaMGcPTTz9d7Xz76vH0+eefM2DAAD7//PP9Pq958+bx+9//nkMPPZShQ4dy+umns2jRohoxV1ZW8vrrrzNgwAAGDBjArFmzYj7+ZZddVm3aWFVnnHEGp59+erXb3njjDU4//XSGDh3KIYccwvTp09m2bdt+Y96fUaNGAWYisap169Zx1VVXccghhzBkyBBOP/10Fi9eXO2Yxvzu791jatasWdHXau8/Vcff7/fz0EMP8etf/5rBgwczfvx47r33Xvx+f7Xz+/1+7rzzTg477DBGjBjB5Zdfzvbt2+v9+lR12GGHAUTHLjKWy5cv56677uKwww5j+PDhXHHFFRQXFzfqsURERKS61v11loiIxN3VV19Nz549mT59OoZhAHDllVeydu1azjnnHLp27UpxcTGffPIJ27Zto1u3bs0e0w8//ADA4MGDq91+0EEHYbVaWbVqVbVqiL2ddNJJvP766yxcuJBzzjknevuuXbv43//+x6RJk3C73axZs4b333+f448/nm7dulFYWMg///lPzjnnHN5+++0m691z88038/rrr3P66adz7rnnsnnzZv7xj3/www8/8NJLL+FwOGLeb+LEifz1r39l4cKFXHzxxdX2LVy4kDFjxpCRkYHf72fKlCn4/X7OOecccnJyyM/P56OPPqK0tJS0tLR6xfvhhx/SvXt3Ro4c2eDnvD/Tp0+nb9++zJgxg48//phHH32UzMxM5s+fz2GHHcbMmTNZsGAB99xzD0OGDOFXv/pVkzzu888/z4QJEzjppJMIBAK8/fbbXH311Tz++OMceeSRANx7773cdNNNDB06lMmTJwPQo0ePmOebOHEi119/PStXrmTo0KHR27ds2cLXX3/NddddF73t0Ucf5cEHH2TixIn89re/pbi4mP/7v//j7LPP5t///jfp6en1fj6RhGXV+65Zs4YzzzyT3NxcLrnkEpKTk1m4cCFXXHEFDz/8ML/+9a8BM5nVVL/7Z5xxBocffni125YsWcKCBQvIysoCzOTs1KlTWb58OZMnT6Zv37789NNPPPfcc2zYsIG///3v0fv+6U9/4s033+TEE09k5MiRfPbZZ42eOrhp0yYAMjMzq90+e/Zs0tPTmTZtGlu2bOG5557j9ttv54EHHmjU44mIiMgeSkyJiMh+DRw4kDlz5kR/Li0tZcWKFVx33XVMmTIlevtll13WYjEVFBREGzxX5XQ6yczMZMeOHfu9/2GHHUbHjh156623qiWmFi1aRCAQ4KSTTgLM6ph3330Xq3VPgfEpp5zCxIkT+de//sUVV1zR6OeybNkyXnnlFe67777o4wIceuihXHzxxSxatKja7VXl5eUxfPhw3nnnnWqJqZUrV/LLL78wbdo0wKyQ2bx5Mw8++CDHH3989LjI/vooLy8nPz9/n5VATWHo0KHR6VRnnHEGEyZM4O677+baa6+NJiBOPPFExo0bx6uvvtpkial33323WsXe2Wefzemnn84zzzwTTUydcsop3HrrrXTv3n2/yU+AY445BqfTycKFC6slphYuXIjFYmHixImAmUB6+OGHueaaa7j88sujxx177LGcdtppvPjii9Vu35fy8nKKi4vx+/188803zJ07F6fTyVFHHRU95i9/+QtdunTh1VdfjU63PeusszjzzDO57777oomppvzdHzFiBCNGjIj+vHHjRu644w7GjBnD73//ewAWLFjAp59+ygsvvBCt9AI44IADuOWWW/jqq68YOXIkq1ev5s033+Sss87illtuAcxxmjFjxn4XStibx+OhuLiYcDjMzz//zF133QVQ7f0BZqLq6aefxmKxAGYC7YUXXqCsrKzeCV0RERGJTVP5RERkvyIXjhFutxuHw8EXX3xR61Sz5uL1evdZReRyufB6vfu9v81mY9KkSaxYsaLatK+33nqLnJycaHWH0+mMXpiHQiF27txJcnIyvXv3jlZtNdaiRYtIS0tjzJgxFBcXR/8cdNBBJCcn1zr9bOLEiXz//ffRig8wEx9OpzPanDuy+uD//vc/PB5Po+ItLy8HICUlpVHn2Z/f/va30W2bzcbgwYMxDKPa7enp6fTu3bvGNLXGqJqUKikpoaysjIMPPrjBY52amsoRRxzBwoULo9WGAO+88w7Dhw8nLy8PgPfee49wOMzEiROr/Q7k5OTQs2fPWn8HIi644AIOP/xwxo8fz1V
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA9/9JREFUeJzs3Xd4VGX6//HPmZpMChBCb1IERYqw2JCi2EBsqIu994VVUdZF11XXriurKH5trAV3rWsFBX+KfW3oghWkg5QEQoCU6TPn98eZGQgEUkgyJe/XdXF5Ms+ZmXvmyZiZe+7nfgzTNE0BAAAAAAAATciW7AAAAAAAAADQ/JCUAgAAAAAAQJMjKQUAAAAAAIAmR1IKAAAAAAAATY6kFAAAAAAAAJocSSkAAAAAAAA0OZJSAAAAAAAAaHIkpQAAAAAAANDkSEoBAAAAAACgyZGUAgBklPPOO0/nnXdessNoEmvXrlWfPn30+uuvJzsU1NKUKVM0atSoBr3N119/XX369NHatWsb9HZTWXW/+4888oj69OnT5LH06dNHjzzySJPfLwAAmYCkFACg2fvhhx9022236dRTT9UBBxxQ6w+23377rfr06aM+ffqotLR0j+deeeWVGjhwoCoqKnZ7zvXXX69+/fppy5YtdYq/uVmzZo1uueUWHXXUUerfv78GDx6sM888U88995z8fn+yw2s0jz/+uD744INkh5EQT4bF//Xt21fDhw/XlClTVFxcnOzwUko8iRb/t//+++uII47QhAkTtGjRonrd5nnnnacTTjihgSMFAKBpOZIdAAAADemf//xnna/zySef6D//+Y969+6tzp07a9WqVTVeJxqN6s4775TH45HX663x/JNOOkkfffSRPvjgA51yyim7jPt8Pn344YcaNmyYWrVqVefH0Fx8/PHHuuaaa+RyuXTyySerd+/eCoVC+u677/T3v/9dy5Yt0x133JHsMBvFE088oeOOO05HH310lctPPvlkjR07Vi6XKylxXX311ercubOCwaAWLlyoN954Q999951mz54tt9vdZHFcddVVuvzyy5vs/urjhBNO0IgRIxSNRrV8+XK9+OKL+vTTT/XKK69o//33T3Z4AAA0OZJSAICU5/V65fF4anVufT6Yn3XWWbrsssuUlZWl22+/vVZJqZdfflkbNmzQ6aefrpkzZ9Z4/qhRo5STk6NZs2ZVm5SaN2+evF6vTjrppDrH31z89ttvmjRpkjp27KjnnntObdu2TYydc845Wr16tT7++OPkBZgkdrtddrs9afc/YsQI9e/fX5L0+9//Xq1atdJTTz2lefPm6fjjj2+yOBwOhxyO1H5r27dvX5188smJnwcPHqyrrrpKL774om6//fYkRgYAQHKwfA8AkFLifWGWLVum66+/XgcddJDOPvtsSdKmTZt04403asSIEerXr5+GDRumq666qkovnfr0lCosLFRWVlatz9+6daseeughXX311crPz6/VdbKysnTsscfqq6++0ubNm3cZnz17tnJycjRq1Cht3bpV9913n0488UQNGjRIgwcP1qWXXqrFixfXeD+7e/zV9TKKRqN69tlnNXbsWPXv319Dhw7VLbfcom3btu3xPv75z3+qT58+Wrdu3S5jU6dOVb9+/RK3sWrVKv3xj3/U4Ycfrv79+2vEiBGaNGmSysvLa3wsO5sxY4a8Xq/uuuuuKgmpuG7duumCCy6QtOd+Wzv3AIr/zq1cuVKTJ0/W7373Ox166KF66KGHZJqmNmzYoKuuukqDBw/W4YcfrqeffrrK7e2up9PXX3+tPn366Ouvv97j4/rnP/+pM888U4cccogGDBigU089VXPnzt0lZq/XqzfeeCOxBGzKlCnV3v8VV1yho446qtr7OuOMM3TqqadWueytt97SqaeeqgEDBujggw/WpEmTtGHDhj3GvCdDhgyRZCURd7R8+XJdffXVOvjgg9W/f3+deuqpmjdvXpVz9uZ3f+eeUlOmTKmyZG7HfzvOfzAY1MMPP6xjjjlG/fr108iRI3X//fcrGAxWuf1gMKi7775bhx56qAYNGqQrr7xSRUVFdX5+dnTooYdKUmLu4nP53Xff6Z577tGhhx6qAw88UBMmTKhxiTAAAOkotb9OAgA0W9dcc426deumSZMmyTRNSdIf//hHLVu2TOeee646deqk0tJS/fe//9WGDRvUuXPnJott2rRpatOmjc4880z93//9X62vd+KJJ+qNN97QnDlzdO655yYu37p1qz7//HONHTtWWVlZWrp0qT744AONHj1anTt3VklJiV5++WWde+65euedd9SuXbsGeRy33HKL3njjDZ166qk677zztHbtWv373//WL7/8ohdffFFOp7Pa640ZM0Z///vfNWfOHF166aVVxubMmaPDDz9cLVq0UDAY1CWXXKJgMKhzzz1XhYWFKi4u1scff6yysjLl5eXVKd6PPvpIXbp00eDBg+v9mPdk0qRJ6tmzp66//np98skneuyxx9SyZUu99NJLOvTQQzV58mTNmjVL9913n/r376+DDjqoQe535syZGjVqlE488USFQiG98847uuaaa/TEE0/oiCOOkCTdf//9uvnmmzVgwACNHz9ektS1a9dqb2/MmDH685//rB9++EEDBgxIXL5u3TotXLhQN9xwQ+Kyxx57TNOmTdOYMWN0+umnq7S0VP/61790zjnn6M0336x10nVH8WTljtddunSpzjrrLLVr106XXXaZPB6P5syZowkTJuiRRx7RMcccI8lKZDXU7/4ZZ5yhww47rMpln332mWbNmqWCggJJVmL2qquu0nfffafx48erZ8+eWrJkiZ577jmtWrWqyuv7L3/5i95++22dcMIJGjx4sL766qu9Xi64Zs0aSVLLli2rXH7nnXcqPz9fEydO1Lp16/Tcc8/p9ttv10MPPbRX9wcAQKohKQUASEn77befpk6dmvi5rKxMCxYs0A033KBLLrkkcfkVV1zRpHEtXrxYL7/8sp588sk6L5k69NBD1aZNG82ePbtKUmru3LkKhUI68cQTJVlVMe+9955stu0FzSeffLLGjBmj//znP5owYcJeP45vv/1Wr776qh544IHE/UrSIYccoksvvVRz586tcvmOOnbsqAMPPFDvvvtulaTUDz/8oN9++00TJ06UZFXGrF27VtOmTdPo0aMT58XH66KiokLFxcW7rQBqCAMGDEgsoTrjjDM0atQo3XvvvbruuusSyYcTTjhBw4cP12uvvdZgSan33nuvSqXeOeeco1NPPVXPPPNMIil18skn67bbblOXLl2qLP+qztFHHy2Xy6U5c+ZUSUrNmTNHhmFozJgxkqzk0SOPPKJrr71WV155ZeK8Y489VuPGjdMLL7xQ5fLdqaioUGlpqYLBoL7//ntNnz5dLpdLRx55ZOKcu+66Sx06dNBrr72WWGJ79tln66yzztIDDzyQSEo15O/+oEGDNGjQoMTPq1ev1h133KHDDz9cZ555piRp1qxZ+uKLL/T8888nKrwkad9999Wtt96q//3vfxo8eLAWL16st99+W2effbZuvfVWSdY8XX/99fr1119rHZPP51Npaami0ahWrFihe+65R5KqvD4kK0n19NNPyzAMSVby7Pnnn1d5eXmdk7kAAKQylu8BAFJS/ENjXFZWlpxOp7755psal5c1prvuuksjRozQsGHD6nxdu92usWPHasGCBVWWes2ePVuFhYWJqg6Xy5X4UB6JRLRlyxZ5PB51795dv/zyS4M8jrlz5yovL0+HH364SktLE/8OOOAAeTyeGpecjRkzRj///HOi0kOykh4ulyvRiDs3N1eS9Pnnn8vn8+1VvPFdC3Nycvbqdvbk9NNPTxzb7Xb169dPpmlWuTw/P1/du3ffZWna3tgxIbVt2zaVl5frd7/7Xb3nOjc3VyNGjNCcOXMSVYaS9O677+rAAw9Ux44dJUnvv/++otGoxowZU+V3oLCwUN26davxdyDuwgsv1GGHHaaRI0fq6quvVnZ2th577DG1b99eklUJ+NVXX2nMmDGJBFZpaam2bNmiYcO
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA9yNJREFUeJzs3Xd4VGX6//HPmZ4KJIFA6EVQpC82qmJFbLiuveuqLKyKoouua+8rPxt+bax1195RgVVs2Mui2JAO0kJCgNTp5/fHmRkISUhCyhTer+vi8mSeMzP3zJMxOXfu534M0zRNAQAAAAAAAK3IFu8AAAAAAAAAsOchKQUAAAAAAIBWR1IKAAAAAAAArY6kFAAAAAAAAFodSSkAAAAAAAC0OpJSAAAAAAAAaHUkpQAAAAAAANDqSEoBAAAAAACg1ZGUAgAAAAAAQKsjKQUASClnnXWWzjrrrHiH0SrWrl2rfv366bXXXot3KGig6dOna9y4cc36mK+99pr69euntWvXNuvjJrLavvcffPBB9evXr9Vj6devnx588MFWf14AAFKBI94BAAAQb4sWLdJrr72mRYsW6bffflMwGNRvv/1W67l1XfReeeWVuuiii+p8jksuuURffPGFPvvsM2VmZtb5GPPmzdOCBQvUrl27xr+QPcSaNWs0a9YsffbZZ9q0aZOcTqf69u2r8ePH65RTTpHH44l3iC3ikUceUZ8+fXTYYYfFOxRJVjLsmmuuiX1tt9uVm5urkSNHaurUqcrPz49jdIll7dq1OvTQQ2Nf22w25efna99999WUKVO0zz77NPoxzzrrLG3ZskVvv/12c4YKAECrIikFAEgp//rXvxp9n48//livvPKK+vbtqy5dumjVqlW7PH/kyJE6/vjjq93Wv3//Xd7nuOOO04cffqj3339fJ5xwQo3xqqoqffDBBxo1ahQJqV346KOPdNlll8nlcun4449X3759FQgE9N133+mf//ynli1bpltuuSXeYbaIRx99VEceeWSNpNTxxx+vCRMmyOVyxSWuSy+9VF26dJHf79f333+v119/Xd99953efvttud3uVotj0qRJu0wMJ4JjjjlGY8aMUTgc1vLly/X888/rk08+0UsvvbRbiSkAAJIdSSkAQMKrrKxUenp6g87dnQvz0047TX/+85/l8Xh0880315uU6tGjR42kVH3GjRunjIwMzZ49u9ak1Pz581VZWanjjjuuUY+7J/n99981depUFRQU6Omnn1aHDh1iY2eccYZWr16tjz76KH4Bxondbpfdbo/b848ZM0YDBw6UJP3pT39Su3bt9Pjjj2v+/Pk6+uijWy0Oh8MhhyOxf7Xt379/tf93DBs2TJMmTdLzzz+vm2++OY6RAQAQH/SUAgAklGhfmGXLlunKK6/Ufvvtp9NPP12SVFRUpGuuuUZjxozRgAEDNGrUKE2aNKlaL53d6SmVl5fX6CVfXq9XPp+vwed7PB4dccQR+vLLL7V58+Ya42+//bYyMjI0btw4bd26VXfddZeOPfZYDR06VMOGDdOFF16oxYsX1/s8db3+2noZhcNhPfXUU5owYYIGDhyoESNG6Prrr9e2bdt2+Rz/+te/1K9fP61bt67G2IwZMzRgwIDYY6xatUp//etfNXLkSA0cOFBjxozR1KlTVVZWVu9r2dmsWbNUWVmp2267rVpCKqp79+4655xzJO2639bOPYCi33MrV67UtGnT9Ic//EEHHnig7rvvPpmmqQ0bNmjSpEkaNmyYRo4cqSeeeKLa49XV0+mrr75Sv3799NVXX+3ydf3rX//SqaeeqgMOOECDBg3SiSeeqLlz59aIubKyUq+//rr69eunfv36afr06bU+/8UXX1xtqdiOTjnlFJ144onVbnvzzTd14oknatCgQdp///01depUbdiwYZcx78rw4cMlWUnEHS1fvlyXXnqp9t9/fw0cOFAnnnii5s+fX+2cpnzv79xTavr06bH3aud/O86/3+/XAw88oMMPP1wDBgzQ2LFjdffdd8vv91d7fL/fr9tvv10HHnighg4dqksuuUQbN25s9PuzowMPPFCSYnMXncvvvvtOd9xxhw488EANGTJEkydPVklJSZOeCwCARJTYf04CAOyxLrvsMnXv3l1Tp06VaZqSpL/+9a9atmyZzjzzTHXu3FklJSX67LPPtGHDBnXp0qXVYnv99df13HPPyTRN9e7dW5MmTdKxxx5b7/2OPfZYvf7665ozZ47OPPPM2O1bt27Vp59+qgkTJsjj8Wjp0qV6//33ddRRR6lLly4qLi7Wiy++qDPPPFPvvPNOs/Xquf766/X666/rxBNP1FlnnaW1a9fqP//5j3755Rc9//zzcjqdtd5v/Pjx+uc//6k5c+bowgsvrDY2Z84cjRw5Um3atJHf79cFF1wgv9+vM888U3l5eSosLNRHH32k0tJSZWVlNSreDz/8UF27dtWwYcN2+zXvytSpU9W7d29deeWV+vjjj/Xwww+rbdu2euGFF3TggQdq2rRpmj17tu666y4NHDhQ++23X7M87zPPPKNx48bp2GOPVSAQ0DvvvKPLLrtMjz76qA4++GBJ0t13363rrrtOgwYN0sknnyxJ6tatW62PN378eP3tb3/TokWLNGjQoNjt69at0/fff6+rr746dtvDDz+s+++/X+PHj9dJJ52kkpIS/fvf/9YZZ5yhN954Q9nZ2Y1+PdFk5Y73Xbp0qU477TTl5+frz3/+s9LT0zVnzhxNnjxZDz74oA4//HBJViKrub73TznlFB100EHVbluwYIFmz56tnJwcSVZidtKkSfruu+908sknq3fv3lqyZImefvpprVq1Sv/3f/8Xu+/f//53vfXWWzrmmGM0bNgwffnll01eLrhmzRpJUtu2bavdfuuttyo7O1tTpkzRunXr9PTTT+vmm2/Wfffd16TnAwAg0ZCUAgAkpL333lszZsyIfV1aWqqFCxfq6quv1gUXXBC7/eKLL27VuIYOHarx48erS5cu2rRpk5577jlNmzZNZWVlsYquuhx44IFq37693n777WpJqblz5yoQCMQSW/369dO8efNks20vaD7++OM1fvx4vfLKK5o8eXKTX8e3336rl19+Wffcc0+1hNoBBxygCy+8UHPnzq0z0VZQUKAhQ4bo3XffrZaUWrRokX7//XdNmTJFklUZs3btWt1///066qijYudFxxujvLxchYWFdVYANYdBgwbFllCdcsopGjdunO68805dccUVseTDMccco9GjR+vVV19ttqTUvHnzqlXqnXHGGTrxxBP15JNPxpJSxx9/vG688UZ17dq13qWjhx12mFwul+bMmVMtKTVnzhwZhqHx48dLspJHDz74oC6//HJdcsklsfOOOOIITZw4Uc8991y12+tSXl6ukpIS+f1+/fDDD5o5c6ZcLpcOOeSQ2Dm33XabOnXqpFdffTW2xPb000/XaaedpnvuuSeWlGrO7/2hQ4dq6NChsa9Xr16tW265RSNHjtSpp54qSZo9e7Y+//xzPfvss7EKL0naa6+9dMMNN+h///ufhg0bpsWLF+utt97S6aefrhtuuEGSNU9XXnllnZsi1KaqqkolJSUKh8NasWKF7rjjDkmq9vmQrCTVE088IcMwJFnJs2effVZlZWWNTuYCAJDIWL4HAEhI0YvGKI/HI6fTqa+//rre5WUt6YUXXtA555yjQw89VKeddppeffVV9e3bV/fee6+8Xu8u72u32zVhwgQtXLiw2lKvt99+W3l5ebGqDpfLFbsoD4VC2rJli9LT09WzZ0/98ssvzfI65s6dq6ysLI0cOVIlJSWxf/vuu6/S09PrXXI2fvx4/fzzz7FKD8lKerhcrlgj7ugug59++qmqqqqaFG95ebkkKSMjo0mPsysnnXRS7Nhut2vAgAEyTbPa7dnZ2erZs2eNpWlNsWNCatu2bSorK9Mf/vCH3Z7rzMxMjRkzRnPmzIlVGUrSu+++qyFDhqigoECS9N577ykcDmv8+PHVvgfy8vLUvXv3er8Hos4991wddNBBGjt2rC699FKlpaXp4YcfVse
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA+LxJREFUeJzs3XeYFFXWx/FfdZw8MIEcRBAMZDGhgGJETJhzQlEXVkVZRdc1r2nlFRTXAOZd4xpRgV0xsYoiLoIBlIzkCcDEzvX+Ud3NDGny1PTM9/M8PtZ0VVef7rnNdJ0+91zDNE1TAAAAAAAAQCNy2B0AAAAAAAAAWh6SUgAAAAAAAGh0JKUAAAAAAADQ6EhKAQAAAAAAoNGRlAIAAAAAAECjIykFAAAAAACARkdSCgAAAAAAAI2OpBQAAAAAAAAaHUkpAAAAAAAANDqSUgCAZuWSSy7RJZdcYncYjWLdunXq1auX3nnnHbtDQTVNnDhRw4cPr9dzvvPOO+rVq5fWrVtXr+dtynY39p944gn16tWr0WPp1auXnnjiiUZ/XAAAmgOX3QEAAGCnSCSi9957T//+97+1ZMkSbd++XZ06ddLJJ5+s0aNHy+v17nKft956S88//7zWrVun9u3bVysRdu2112revHn66quvlJaWtttjbr75Zs2ePVtz585V69at6+X5NUdr167V9OnT9dVXX2nLli1yu93q2bOnRowYofPOO09JSUl2h9ggnn76afXo0UPHHXec3aFIspJht912W/xnp9Op7OxsHXnkkRo/frzatm1rY3RNy7p163TsscfGf3Y4HGrbtq0OOuggjRs3TgcccECNz3nJJZdo69at+vDDD+szVAAAGhVJKQBAs/Lcc8/V6Pjy8nLddttt6t+/v84//3xlZ2dr4cKFeuKJJzRv3jy9/PLLMgwjfvzrr7+uu+66SyeeeKKuuOIKLViwQPfff7/Ky8s1ZsyYPT7Oaaedps8++0yffPKJzjjjjN3G8emnn+qoo44iIbUXn3/+uW644QZ5PB6dfvrp6tmzp4LBoL7//nv97W9/0/Lly3XffffZHWaDeOaZZ3TiiSfukpQ6/fTTNXLkSHk8Hlviuv7669WpUycFAgH98MMPevfdd/X999/rww8/3G1St6Fcd911e30PNgWnnHKKhg4dqkgkohUrVui1117Tl19+qTfffLNWiSkAABIdSSkAQJNXVlamlJSUah1b0wtzt9ut1157TQMHDozfdu6556pjx47xxNTgwYMlST6fT4899piOPvpoPf744/FjI5GInnrqKZ133nnKzMzc7eMMHz5cqampmjFjxm6TUnPmzFFZWZlOO+20GsXfkvz+++8aP368OnTooJdeeklt2rSJ77vooou0Zs0aff755/YFaBOn0ymn02nb4w8dOlR9+vSRJJ1zzjlq3bq1pk2bpjlz5ujkk09utDhcLpdcrqb90fbAAw/U6aefHv954MCBuu666/Taa6/p3nvvtTEyAADsQU8pAECTEusLs3z5ct1888065JBDdOGFF0qS8vLydNttt2no0KHq3bu3jjrqKF133XWVeunUtKeUx+OplJCKOf744yVJK1asiN/27bffatu2bfF4Yi666CKVlZXtNSGSlJSkE044Qd98840KCgp22f/hhx8qNTVVw4cP17Zt2/Twww/r1FNP1YABAzRw4EBdddVVWrp0aZXPZ0/Pf3e9jCKRiF588UWNHDlSffr00eDBg3XnnXdq+/bte32M5557Tr169dL69et32Tdp0iT17t07fo7Vq1frj3/8o4488kj16dNHQ4cO1fjx41VcXFzlc9nZ9OnTVVZWpr/+9a+VElIxXbt21WWXXSZp7/22du4BFBtzq1at0oQJE3TwwQfr8MMP1+TJk2WapjZu3KjrrrtOAwcO1JFHHqnnn3++0vn21NPp22+/Va9evfTtt9/u9Xk999xzOv/883XYYYepb9++OvPMMzVr1qxdYi4rK9O7776rXr16qVevXpo4ceJuH/+aa66pNFWsovPOO09nnnlmpdvef/99nXnmmerbt68OPfRQjR8/Xhs3btxrzHszaNAgSVYSsaIVK1bo+uuv16GHHqo+ffrozDPP1Jw5cyodU5exv3NPqYkTJ8Zfq53/q/j7DwQCevzxx3X88cerd+/eGjZsmB555BEFAoFK5w8EAnrggQd0+OGHa8CAAbr22mu1adOmGr8+FR1++OGSFP/dxX6X33//vR588EEdfvjh6t+/v8aOHavCwsI6PRYAAE1R0/46CQDQYt1www3q2rWrxo8fL9M0JUl//OMftXz5cl188cXq2LGjCgsL9dVXX2njxo3q1KlTvT5+fn6+JFWaSvfLL79Iknr37l3p2IMOOkgOh0NLliypVAWxs1NPPVXvvvuuZs6cqYsvvjh++7Zt2/Tf//5XI0eOVFJSkpYtW6ZPPvlEJ510kjp16qT8/Hy98cYbuvjii/XRRx/VW6+eO++8U++++67OPPNMXXLJJVq3bp3++c9/6pdfftFrr70mt9u92/uNGDFCf/vb3zRz5kxdddVVlfbNnDlTRx55pDIzMxUIBDR69GgFAgFdfPHFysnJ0ebNm/X555+rqKhI6enpNYr3s88+U+fOnXebRKwP48ePV/fu3XXzzTfriy++0FNPPaVWrVrp9ddf1+GHH64JEyZoxowZevjhh9WnTx8dcsgh9fK4L7/8soYPH65TTz1VwWBQH330kW644QY988wzOvrooyVJjzzyiO644w717dtX5557riSpS5cuuz3fiBEjdOutt2rx4sXq27dv/Pb169frhx9+0C233BK/7amnntKUKVM0YsQInX322SosLNQ//vEPXXTRRXrvvfeUkZFR4+cTS1ZWvO+yZct0wQUXqG3btrr66quVkpKimTNnauzYsXriiSfiSeDff/+93sb+eeedpyOOOKLSbXPnztWMGTOUlZUlyUrMXnfddfr+++917rnnqnv37vrtt9/00ksvafXq1fr73/8ev++f//xnffDBBzrllFM0cOBAffPNN3WeLrh27VpJUqtWrSrdfv/99ysjI0Pjxo3T+vXr9dJLL+nee+/V5MmT6/R4AAA0NSSlAABN0v77769JkybFfy4qKtLChQt1yy23aPTo0fHbr7nmmgZ5/OnTpystLU1Dhw6N35aXlxdv5lyRx+NRq1attGXLlr2e8/DDD1dubq4+/PDDSkmpWbNmKRgM6tRTT5VkVcXMnj1bDseOgubTTz9dI0aM0L/+9S+NHTu2zs9vwYIFeuutt/Too4/GH1eSDjvsMF111VWaNWtWpdsr6tChg/r376+PP/64UlJq8eLF+v333zVu3DhJVmXMunXrNGXKFJ100knx42L7a6KkpESbN2/eYwVQfejbt298CtV5552n4cOH66GHHtJNN90UTz6ccsopGjJkiN5+++16S0rNnj27UnP2iy66SGeeeaZeeOGFeFLq9NNP1913363OnTvvNfEpSccdd5w8Ho9mzpxZKSk1c+ZMGYahESNGSLKSR0888YRuvPFGXXvttfHjTjjhBI0aNUqvvvpqpdv3pKSkRIWFhQoEAlq0aJGmTp0qj8ejY445Jn7MX//6V7Vv315vv/12fIrthRdeqAsuuECPPvpoPClVn2N/wIABGjBgQPznNWvW6L777tORRx6p888/X5I0Y8YMff3113rllVfiFV6StN9+++muu+7S//73Pw0cOFBLly7VBx98oAsvvFB33XWXJOv3dPPNN+vXX3+tdkzl5eUqLCxUJBLRypUr9eCDD0pSpfeHZCWpnn/++Xg/u0gkoldeeUXFxcU1TuYCANCUMX0PANAkxS4aY5KSkuR2uzV//vwqp5fV1dNPP62vv/5aN998c6VqD5/Pt8fqIa/XK5/Pt9fzOp1OjRw5UgsXLqw01evDDz9UTk5OvKrD4/HEL8rD4bC2bt2qlJQUdevWLV6tVVezZs1Senq6jjzySBUWFsb/O+igg5SSklLllLMRI0bo559/jld6SFbSw+PxxBtxx1YZ/O9//6vy8vI6xVtSUiJJSk1NrdN59ub
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA8jBJREFUeJzs3Xd4VGX6xvH7TE0HQiB0RBAU6YuVplgRG65ir7goC6siqOi69r6ioPizYcNVEbuowCp2xYILIgpKRzpJIJmU6ef3x5kMBAJJSMjJJN/PdXl5MufMzDPJGZJzz/s+r2GapikAAAAAAACgFjnsLgAAAAAAAAAND6EUAAAAAAAAah2hFAAAAAAAAGodoRQAAAAAAABqHaEUAAAAAAAAah2hFAAAAAAAAGodoRQAAAAAAABqHaEUAAAAAAAAah2hFAAAAAAAAGodoRQAoF65+OKLdfHFF9tdRq1Yt26dunTporffftvuUlBJEyZM0ODBg2v0Md9++2116dJF69atq9HHrcvKO/cff/xxdenSpdZr6dKlix5//PFaf14AAOoDl90FAABgp2g0qnfffVf//e9/tWTJEuXn56tNmzY65ZRTNGLECHm93jLH7+mid9y4cRo5cuQen+fqq6/WvHnz9M033ygtLW2PjzFnzhx99dVXatKkyb6/qHpu7dq1mjp1qr755htt2bJFbrdbnTt31pAhQ3TuuecqKSnJ7hL3i6eeekqdOnXS8ccfb3cpkqww7Oabb45/7XQ61bRpU/Xr109jx45Vdna2jdXVLevWrdNxxx0X/9rhcCg7O1uHHnqoxowZo0MOOaTKj3nxxRdr27Zt+uCDD2qyVAAAahWhFACgXnnuueeqdHxJSYluvvlm9erVS+edd56aNm2qBQsW6PHHH9e8efM0bdo0GYZR5j79+vXTGWecUea2rl277vV5Tj/9dH322Wf65JNPdOaZZ5Zbx6effqr+/fsTSO3F559/rmuvvVYej0dnnHGGOnfurFAopJ9++kn//ve/tXz5ct199912l7lfPP300zrppJN2C6XOOOMMDR06VB6Px5a6rrnmGrVp00bBYFALFy7UO++8o59++kkffPDBbqHu/jRq1Ki9BsN1wamnnqqBAwcqGo1qxYoVeu211/Tll19qxowZ+xRMAQCQ6AilAAB1XnFxsVJSUip1bFUvzN1ut1577TX16dMnftvw4cPVunXreDB19NFHl7nPAQccsFsoVZHBgwcrNTVVM2fOLDeUmjt3roqLi3X66adX6XEbkj///FNjx45Vq1at9NJLL6l58+bxfRdeeKHWrFmjzz//3L4CbeJ0OuV0Om17/oEDB6p79+6SpHPOOUdNmjTRs88+q7lz5+qUU06ptTpcLpdcrrr9p23Xrl3L/NvRp08fjRo1Sq+99pruuusuGysDAMAe9JQCANQppX1hli9frnHjxumwww7TBRdcIEnaunWrbr75Zg0cOFDdunVT//79NWrUqDK9dKraU8rj8ZQJpEqdcMIJkqQVK1aUez+/369AIFDp50lKStKJJ56o7777Trm5ubvt/+CDD5SamqrBgwdr+/btevDBB3Xaaaepd+/e6tOnj6688kotXbq0wufZ0+svr5dRNBrViy++qKFDh6p79+46+uijddtttyk/P3+vz/Hcc8+pS5cuWr9+/W77Jk6cqG7dusUfY/Xq1frHP/6hfv36qXv37ho4cKDGjh0rn89X4WvZ1dSpU1VcXKx77723TCBVqn379rr00ksl7b3f1q49gErPuVWrVmn8+PH6y1/+oiOPPFKTJk2SaZrauHGjRo0apT59+qhfv356/vnnyzzenno6ff/99+rSpYu+//77vb6u5557Tuedd56OOOII9ejRQ2eddZZmz569W83FxcV655131KVLF3Xp0kUTJkwo9/mvuuqqMlPFdnbuuefqrLPOKnPbe++9p7POOks9evTQ4YcfrrFjx2rjxo17rXlv+vbtK8kKEXe2YsUKXXPNNTr88MPVvXt3nXXWWZo7d26ZY6pz7u/aU2rChAnx79Wu/+388w8Gg3rsscd0wgknqFu3bho0aJAeeughBYPBMo8fDAZ133336cgjj1Tv3r119dVXa9OmTVX+/uzsyCOPlKT4z670Z/nTTz/p/vvv15FHHqlevXpp9OjRysvLq9ZzAQBQF9Xtj5MAAA3Wtddeq/bt22vs2LEyTVOS9I9//EPLly/XRRddpNatWysvL0/ffPONNm7cqDZt2tTo8+fk5EhSuVPp3nnnHb366qsyTVMdO3bUqFGjdNppp1X4mKeddpreeecdzZo1SxdddFH89u3bt+vrr7/W0KFDlZSUpGXLlumTTz7RySefrDZt2ignJ0evv/66LrroIn344Yc11qvntttu0zvvvKOzzjpLF198sdatW6dXXnlFv/32m1577TW53e5y7zdkyBD9+9//1qxZs3TllVeW2Tdr1iz169dPjRo1UjAY1IgRIxQMBnXRRRcpKytLmzdv1ueff66CggKlp6dXqd7PPvtMbdu2LTdErAljx45Vx44dNW7cOH3xxRd68skn1bhxY02fPl1HHnmkxo8fr5kzZ+rBBx9U9+7dddhhh9XI806bNk2DBw/WaaedplAopA8//FDXXnutnn76aR1zzDGSpIceeki33nqrevTooeHDh0uS2rVrV+7jDRkyRDfddJMWLVqkHj16xG9fv369Fi5cqBtvvDF+25NPPqnJkydryJAhOvvss5WXl6f//Oc/uvDCC/Xuu+8qIyOjyq+nNKzc+b7Lli3T+eefr+zsbP3tb39TSkqKZs2apdGjR+vxxx+Ph8B//vlnjZ375557ro466qgyt3311VeaOXOmMjMzJVnB7KhRo/TTTz9p+PDh6tixo/744w+99NJLWr16tf7v//4vft9//vOfev/993XqqaeqT58++u6776o9XXDt2rWSpMaNG5e5/Z577lFGRobGjBmj9evX66WXXtJdd92lSZMmVev5AACoawilAAB10sEHH6yJEyfGvy4oKNCCBQt04403asSIEfHbr7rqqv3y/FOnTlVaWpoGDhxY5vbevXtryJAhatOmjbZs2aJXX31V48ePl8/ni4/o2pMjjzxSzZo10wcffFAmlJo9e7ZCoVA82OrSpYvmzJkjh2PHgOYzzjhDQ4YM0ZtvvqnRo0dX+/XNnz9fb7zxhh5++OEygdoRRxyhK6+8UrNnz95j0NaqVSv16tVLH330UZlQatGiRfrzzz81ZswYSdbImHXr1mny5Mk6+eST48eV7q+KwsJCbd68eY8jgGpCjx494lOozj33XA0ePFgPPPCArr/++nj4cOqpp2rAgAF66623aiyUmjNnTpnm7BdeeKHOOussvfDCC/FQ6owzztAdd9yhtm3bVjh19Pjjj5fH49GsWbPKhFKzZs2SYRgaMmSIJCs8evzxx3Xdddfp6quvjh934oknatiwYXr11VfL3L4nhYWFysvLUzAY1M8//6wpU6bI4/Ho2GOPjR9z7733qmXLlnrrrbfiU2wvuOACnX/++Xr44YfjoVRNnvu9e/dW796941+vWbNGd999t/r166fzzjtPkjRz5kx9++23evnll+MjvCTpoIMO0u23367//e9/6tOnj5YuXar3339fF1xwgW6//XZJ1s9p3Lhx+v333ytdU0lJifLy8hSNRrVy5Urdf//9klTm/SFZIdXzzz8f72cXjUb18ssvy+fzVTnMBQCgLmP6HgCgTiq9aCyVlJQkt9utH374ocLpZdX11FNP6dtvv9W4ceN2Gykyffp0XXrppTruuON0/vnn66233lLnzp316KOPyu/37/VxnU6nhg4dqgULFpSZ6vXBBx8oKysrPqrD4/HEL8ojkYi2bdumlJQUdejQQb/99luNvMbZs2crPT1d/fr1U15eXvy/Qw89VCkpKRVOORsyZIh+/fXX+EgPyQo9PB5PvBF36SqDX3/9tUpKSqpVb2FhoSQpNTW1Wo+zN2effXZ82+l0qlu3bjJNs8ztGRkZ6tChw25T06pj50AqPz9fPp9Pf/nLX/b5Z10aps6
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA8UVJREFUeJzs3Xd8FHX+x/H3bE8FQihSpQio9ONsVLEiNjwPz4IFOBThVBQV/XnY68kpimcBC3iniF1U4BQbdvEAC6AgTTohQDZl+/z+mM1CIEACIbObvJ6PBw8mM7O7n93MJDOffL6fr2GapikAAAAAAACgmjnsDgAAAAAAAAC1E4kpAAAAAAAA2ILEFAAAAAAAAGxBYgoAAAAAAAC2IDEFAAAAAAAAW5CYAgAAAAAAgC1ITAEAAAAAAMAWJKYAAAAAAABgCxJTAAAAAAAAsAWJKQBAjTJkyBANGTLE7jCqxdq1a9W+fXu98cYbdoeCCho3bpz69+9fpc/5xhtvqH379lq7dm2VPm8yK+/Yf/zxx9W+fftqj6V9+/Z6/PHHq/11AQCoKVx2BwAAgN1mzJihd955RytWrFBBQYEaNmyoY489VqNGjVKzZs322P/VV1/Vc889p7Vr1+qwww6rUDLsqquu0ldffaUvvvhCmZmZ5e5zww03aM6cOZo3b57q1atXJe+tJlqzZo2mTJmiL774Qps3b5bb7Va7du00YMAAXXDBBfL5fHaHeEg89dRTatu2rU4++WS7Q5FkJcRuueWWxNdOp1P169dXz549NWbMGDVq1MjG6JLL2rVrddJJJyW+djgcatSokY4++miNHj1aRx55ZKWfc8iQIdq2bZvefffdqgwVAIBqR2IKAFCjPPvss5V+zOLFi9WsWTP1799f2dnZWrt2rV599VV9/PHHevvtt8vcYE+fPl233367TjvtNF1xxRWaP3++7rnnHpWUlGjEiBF7fY2zzz5bH3/8sT788EOde+65e2wvKSnRRx99pF69epGU2odPPvlE1157rTwej8455xy1a9dO4XBY33//vf7xj39o+fLluvvuu+0O85B4+umnddppp+2RmDrnnHM0cOBAeTweW+K65ppr1KxZM4VCIS1cuFBvvvmmvv/+e7377rvyer3VFsfIkSP3eQ4mgzPPPFN9+vRRLBbTb7/9ppdfflmfffaZZsyYcUDJKQAAagISUwCApFdcXKz09PQK7XsgN+d33HHHHutOPvlk/elPf9Lbb7+duNkNBAJ65JFH1K9fPz322GOSpMGDBysWi+nJJ5/UBRdcoDp16pT7Gv3791dGRoZmzpxZbmJq7ty5Ki4u1tlnn13p+GuL33//XWPGjFGTJk00depUNWzYMLHt4osv1urVq/XJJ5/YF6BNnE6nnE6nba/fp08fderUSZL05z//WfXq1dPkyZM1d+5cnXHGGdUWh8vlksuV3Je2Rx11lM4555zE1927d9fIkSP18ssv66677rIxMgAA7EOPKQBAUintE7N8+XLdcMMN+uMf/6iLLrpIkrRlyxbdcsst6tOnjzp27KhevXpp5MiRZXrrVFWPqaZNm0qSCgoKEuu++eYbbd++PRFPqYsvvljFxcX7TIr4fD6deuqp+vrrr7V169Y9tr/77rvKyMhQ//79tX37dj344IM666yz1K1bN3Xv3l3Dhw/X0qVL9xv33t5/eb2NYrGYXnjhBQ0cOFCdOnXSCSecoPHjx2vHjh37fI1nn31W7du317p16/bYNmHCBHXs2DHxHKtWrdLf/vY39ezZU506dVKfPn00ZswY+f3+/b6X3U2ZMkXFxcW69957yySlSrVs2VKXXXaZpH3339q9J1DpMbdy5UqNHTtWf/jDH3Tcccfp0UcflWma2rBhg0aOHKnu3burZ8+eeu6558o83956PH3zzTdq3769vvnmm32+r2effVZ/+ctfdOyxx6pz584677zzNHv27D1iLi4u1ptvvqn27durffv2GjduXLmvf+WVV5YZNrarCy64QOedd16ZdW+//bbOO+88de7cWcccc4zGjBmjDRs27DPmfenRo4ckK5G4q99++03XXHONjjnmGHXq1EnnnXee5s6dW2afgzn2d+8xNW7cuMRntfu/Xb//oVBIjz32mE455RR17NhRffv21UMPPaRQKFTm+UOhkO677z4dd9xx6tatm6666ipt3Lix0p/Pro477jhJSnzvSr+X33//ve6//34dd9xx6tq1q0aNGqX8/PyDei0AAJJVcv9ZCQBQa1177bVq2bKlxowZI9M0JUl/+9vftHz5cl1yySVq2rSp8vPz9cUXX2jDhg3l9oKqrG3btikWi2n9+vV64oknJEnHH398YvvixYslSR07dizzuKOPPloOh0NLliwpUw2xu7POOktvvvmmZs2apUsuuSSxfvv27fr88881cOBA+Xw+LVu2TB9++KFOP/10NWvWTHl5eXrllVd0ySWX6L333quy3j3jx4/Xm2++qfPOO09DhgzR2rVr9Z///EeLFy/Wyy+/LLfbXe7jBgwYoH/84x+aNWuWhg8fXmbbrFmz1LNnT9WpU0ehUEjDhg1TKBTSJZdcotzcXG3atEmffPKJCgoKlJWVVal4P/74YzVv3lzdu3c/4Pe8L2PGjFGbNm10ww036NNPP9WTTz6punXravr06TruuOM0duxYzZw5Uw8++KA6deqkP/7xj1XyutOmTVP//v111llnKRwO67333tO1116rp59+Wv369ZMkPfTQQ7rtttvUuXNnDR48WJLUokWLcp9vwIABuvnmm/XDDz+oc+fOifXr1q3TwoULddNNNyXWPfnkk5o4caIGDBig888/X/n5+fr3v/+tiy++WG+99Zays7Mr/X5KE5a7PnbZsmW68MIL1ahRI/31r39Venq6Zs2apVGjRunxxx/XKaecIslKZlXVsX/BBReUOX8lad68eZo5c6ZycnIkWcnZkSNH6vvvv9fgwYPVpk0b/frrr5o6dapWrVqlf/3rX4nH/t///Z/eeecdnXnmmerevbu+/vrrgx46uGbNGklS3bp1y6y/5557lJ2drdGjR2vdunWaOnWq7rrrLj366KMH9XoAACQjElMAgKTUoUMHTZgwIfF1QUGBFixYoJtuuknDhg1LrL/yyiur7DX79OmTqJKoW7eubrvtNvXs2TOxfcuWLYkGz7vyeDyqW7euNm/evM/nP+6449SgQQO9++67ZRJTs2fPVjgc1llnnSXJqo6ZM2eOHI6dhc3nnHOOBgwYoNdee02jRo066Pc6f/58vfrqq3r44YcTrytJxx57rIYPH67Zs2eXWb+rJk2aqGvXrnr//ffLJKZ++OEH/f777xo9erQkq0Jm7dq1mjhxok4//fTEfqXbK6OwsFCbNm3aayVQVejcuXNiONUFF1yg/v3764EHHtD111+fSECceeaZ6t27t15//fUqS0zNmTOnTMP2iy++WOedd56ef/75RGLqnHPO0R133KHmzZvvM/kpWcNQPR6PZs2aVSYxNWvWLBmGoQEDBkiyEkiPP/64rrvuOl111VWJ/U499VQNGjRIL730Upn1e1NYWKj8/HyFQiEtWrRIkyZNksfj0YknnpjY595779Vhhx2m119/PTHc9qKLLtKFF16ohx9+OJGYqspjv1u3burWrVvi69WrV+vuu+9Wz5499Ze//EWSNHPmTH355Zd68cUXE5VeknTEEUfo9ttv1//+9z91795dS5cu1TvvvKOLLrpIt99+uyTr+3TDDTfol19+qXBMJSUlys/PVywW04oVK3T//fdLUpnzQ7J+/jz33HMyDEOSlUB78cUX5ff7K53QBQAg2TGUDwCQlEpvHEv5fD653W59++23+x1qdqAmT56sZ555RuPGjVOTJk1UUlJSZnsgENhrFZHX61UgENjn8zudTg0cOFALFiwoM+zr3XffVW5ubqK6w+PxJG7Mo9Gotm3bpvT0dLVq1SpRtXWwZs+eraysLPXs2VP5+fmJf0cffbTS09P3O/xswIAB+vnnnxMVH5KV+PB4PInm3KWzD37++ed7fJaVVVhYKEnKyMg
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA685JREFUeJzs3Xd8FHX+x/H3bE1HQuhNioAICIiVplgR+ymeBSvHycGpKCr6s3c9OUHxLGDBithFBU6xcZ4ND6yg0qUEEgKkbp/fH7NZCElIAoHZCa/n4+HDyX5ndz+7mSE7n/18P1/DNE1TAAAAAAAAwF7ksjsAAAAAAAAA7HtISgEAAAAAAGCvIykFAAAAAACAvY6kFAAAAAAAAPY6klIAAAAAAADY60hKAQAAAAAAYK8jKQUAAAAAAIC9jqQUAAAAAAAA9jqSUgAAAAAAANjrSEoBABqUESNGaMSIEXaHsVesWbNGXbt21Ztvvml3KKilCRMmaMiQIfX6mG+++aa6du2qNWvW1OvjJrOqjv1HH31UXbt23euxdO3aVY8++uhef14AABoCj90BAABgt5kzZ+rdd9/V8uXLVVhYqGbNmunwww/XmDFj1KZNmwr7VnfRe+2112rUqFHVPscVV1yhL7/8Ul988YUyMjKqfYy5c+dq/vz5aty48a6/oAZu9erVmjZtmr744gtt3LhRXq9XXbp00dChQ3XuuecqJSXF7hD3iCeeeEKdO3fWcccdZ3cokqxk2I033pj42e12q0mTJurfv7/GjRun5s2b2xhdclmzZo2OPfbYxM8ul0vNmzfXQQcdpLFjx+rAAw+s82OOGDFCmzdv1nvvvVefoQIAsFeRlAIANChPP/10ne/zyy+/qE2bNhoyZIiysrK0Zs0avfbaa/rkk0/0zjvvVLq47t+/v04//fQKt3Xv3n2nz3Haaafpk08+0UcffaQzzjij0nhZWZk+/vhjDRgwgITUTnz66ae66qqr5PP5dPrpp6tLly4Kh8P67rvv9I9//ENLly7VXXfdZXeYe8STTz6pE088sVJS6vTTT9ewYcPk8/lsievKK69UmzZtFAqFtGjRIr311lv67rvv9N5778nv9++1OEaPHr3TxHAyOOWUUzRo0CDFYjEtW7ZMr7zyij7//HPNnDlzlxJTAAA4HUkpAEDSKy0tVVpaWq323ZUL89tvv73Sbccdd5z+9Kc/6Z133ql0obv//vtXSkrVZMiQIUpPT9esWbOqTErNmzdPpaWlOu200+r0uPuSP/74Q+PGjVOrVq00ffp0NWvWLDF2wQUXaNWqVfr000/tC9AmbrdbbrfbtucfNGiQevbsKUk655xz1LhxY02dOlXz5s3TySefvNfi8Hg88niS+6Nt9+7dK/zb0bdvX40ePVqvvPKK7rzzThsjAwDAHvSUAgAklfK+MEuXLtW1116rQw89VOeff74kKS8vTzfeeKMGDRqkHj16aMCAARo9enSFXjr11VOqdevWkqTCwsIqxwOBgILBYK0fLyUlRSeccIK++uorbdq0qdL4e++9p/T0dA0ZMkRbtmzRAw88oFNPPVV9+vRR3759NXLkSC1ZsqTG56nu9VfVyygWi+m5557TsGHD1LNnTx111FG69dZbtXXr1p0+x9NPP62uXbtq7dq1lcYmTpyoHj16JB5j5cqV+vvf/67+/furZ8+eGjRokMaNG6eioqIaX8uOpk2bptLSUt1zzz0VElLl2rdvr4svvljSzvtt7dgDqPyYW7FihcaPH69DDjlERxxxhCZNmiTTNLV+/XqNHj1affv2Vf/+/fXMM89UeLzqejp9/fXX6tq1q77++uudvq6nn35af/7zn3X44YerV69eOuusszRnzpxKMZeWluqtt95S165d1bVrV02YMKHK5//rX/9aYarY9s4991ydddZZFW575513dNZZZ6lXr1467LDDNG7cOK1fv36nMe9Mv379JFlJxO0tW7ZMV155pQ477DD17NlTZ511lubNm1dhn9059nfsKTVhwoTEe7Xjf9v//kOhkB555BEdf/zx6tGjhwYPHqwHH3xQoVCowuOHQiHde++9OuKII9SnTx9dccUVys3NrfP7s70jjjhCkhK/u/Lf5Xfffaf77rtPRxxxhHr37q0xY8aooKBgt54LAIBklNxfJwEA9llXXXWV2rdvr3Hjxsk0TUnS3//+dy1dulQXXnihWrdurYKCAn3xxRdav359pd5Pu2Lz5s2KxWJat26dHnvsMUnSkUceWWm/t956Sy+//LJM01SnTp00evRonXrqqTU+/qmnnqq33npLs2fP1oUXXpi4fcuWLfrPf/6jYcOGKSUlRb///rs++ugjnXTSSWrTpo3y8/P16quv6sILL9T7779fb716br31Vr311ls666yzNGLECK1Zs0YvvfSSfvnlF73yyivyer1V3m/o0KH6xz/+odmzZ2vkyJEVxmbPnq3+/furUaNGCoVCuvzyyxUKhXThhRcqJydHGzZs0KeffqrCwkJlZmbWKd5PPvlEbdu2Vd++fXf5Ne/MuHHj1KlTJ1177bX67LPP9Pjjj2u//fbTjBkzdMQRR2j8+PGaNWuWHnjgAfXs2VOHHnpovTzv888/ryFDhujUU09VOBzW+++/r6uuukpPPvmkjj76aEnSgw8+qJtvvlm9evXS8OHDJUnt2rWr8vGGDh2qG264QT/88IN69eqVuH3t2rVatGiRrr/++sRtjz/+uCZPnqyhQ4fq7LPPVkFBgV588UVdcMEFevvtt5WVlVXn11OerNz+vr///rvOO+88NW/eXH/5y1+Ulpam2bNna8yYMXr00Ud1/PHHS7ISWfV17J977rmVzt/58+dr1qxZys7OlmQlZkePHq3vvvtOw4cPV6dOnfTbb79p+vTpWrlypf71r38l7vt///d/evfdd3XKKaeob9+++uqrr3Z7uuDq1aslSfvtt1+F2++++25lZWVp7NixWrt2raZPn64777xTkyZN2q3nAwAg2ZCUAgAkpW7dumnixImJnwsLC7Vw4UJdf/31uvzyyxO3//Wvf6235xw0aFCiOmK//fbTzTffrP79+1fYp0+fPho6dKjatGmjjRs36uWXX9b48eNVVFSUqOiqzhFHHKGmTZvqvffeq5CUmjNnjsLhcCKx1bVrV82dO1cu17aC5tNPP11Dhw7V66+/rjFjxuz2a12wYIFee+01PfTQQxUSaocffrhGjhypOXPmVJtoa9WqlXr37q0PPvigQlLqhx9+0B9//KGxY8dKsipj1qxZo8mTJ+ukk05K7Fc+XhfFxcXasGFDtRVA9aFXr16JKVTnnnuuhgwZovvvv1/XXHNNIvlwyimnaODAgXrjjTfqLSk1d+7cCs3ZL7jgAp111ll69tlnE0mp008/Xbfffrvatm1b49TR4447Tj6fT7Nnz66QlJo9e7YMw9DQoUMlWcmjRx99VFdffbWuuOKKxH4nnHCCzjzzTL388ssVbq9OcXGxCgoKFAqF9P3332vKlCny+Xw65phjEvvcc889atmypd54443EFNvzzz9f5513nh566KFEUqo+j/0+ffqoT58+iZ9XrVqlu+66S/3799ef//xnSdKsWbP03//+Vy+88EKiwkuSDjjgAN1222363//+p759+2rJkiV69913df755+u2226TZP2err32Wv3666+1jqmsrEwFBQWKxWJavny57rvvPkmqcH5I1r8/zzzzjAzDkGQlz1544QUVFRXVOZkLAEAyY/oeACAplV80lktJSZHX69U333xT4/SyXTV16lQ99dRTmjBhglq1aqWysrJK+8yYMUMXX3yxjj32WJ133nl644031KVLFz388MMKBAI7fXy3261hw4Zp4cKFFaZ6vffee8rJyUlUdfh8vsRFeTQa1ebNm5WWlqYOHTrol19+qZfXOmfOHGVmZqp///4qKChI/HfQQQcpLS2txilnQ4cO1c8//5yo9JCspIfP50s04i5fZfA///lPle9lXRQXF0uS0tPTd+txdubss89ObLvdbvXo0UOmaVa4PSsrSx06dKg0NW13bJ+Q2rp
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA6KtJREFUeJzs3Xd8FHX+x/H3bE8FQgJIRxBR6WJDEUFUitjubHeAKMrpiQVFRc+C5Ww/UVE8C9gbimdvqGDBs6KADQsKKNWEQPr2+f0xm4VAgABJJrN5PR8PH072O9n57GaWzHzy+X6+hmmapgAAAAAAAIB65rI7AAAAAAAAADROJKYAAAAAAABgCxJTAAAAAAAAsAWJKQAAAAAAANiCxBQAAAAAAABsQWIKAAAAAAAAtiAxBQAAAAAAAFuQmAIAAAAAAIAtSEwBAAAAAADAFiSmAAApZfTo0Ro9erTdYdSLzz//XHvvvbc+//xzu0NBDdXF+Xnvvfdq7733rtXnbOiqO/cnT56swYMH12scK1eu1N57760XX3yxXo8LAEAqITEFAMBmIpGIhg8frr333lsPP/zwVuPxeFwzZszQ4MGD1aNHD40cOVKvv/76Dp935MiROuKII2Sa5jb3Oe2009S/f39Fo9Hdeg2pbsmSJZo0aZIGDhyo7t2768ADD9TYsWP13//+V7FYzO7w6kRFRYXuvffeBpWErEyIVf633377afDgwbrppptUXFxsd3gNSmUibfP36sgjj9Tll1+uP/74Y5eec/DgwfrHP/5Ry5ECAFD/PHYHAABAbaoumbQznnrqKa1Zs2ab43fddZceeughnXLKKerRo4fmzp2rSy+9VIZhaMSIEdv8vpEjR2rq1KlasGCBDjjggK3GV65cqUWLFmnUqFHyePj1vC2zZ8/Wddddp+bNm+v4449Xhw4dVFZWps8++0z/+te/lJ+fr3PPPdfuMGtdRUWFpk+frgkTJuiggw6qMnbeeedp/PjxNkUmTZkyRenp6aqoqNCnn36qJ598Ut9//72effbZeo3jxhtv3G7ityEYPXq0evTooWg0qh9++EHPPfecPvzwQ7366qtq2bKl3eEBAGALrnwBAA1eeXm50tPTa7Svz+fb5eOsX79e9913n84++2zdc889W42vW7dOjz76qP7+97/r2muvlSSdfPLJGjVqlG6//XYNHTpUbre72uceOXKk7rzzTr322mvVJqbeeOMNmaapkSNH7nL8qW7RokW67rrr1Lt3bz300EPKzMxMjo0dO1bffvutfvnlFxsjtIfH47E1mXnMMccoJydHklX1N3HiRL355pv65ptv1LNnz3qLw+v11tuxdlW/fv00dOhQSdJf/vIXdezYUTfddJNefvllqp8AAI0WU/kAAA1K5fSgpUuX6tJLL9UBBxygv/3tb5Kk/Px8XXnllTr88MPVvXt3HXbYYTrvvPO0cuXK5PfvTg+fO+64Q506ddJxxx1X7fh7772nSCSSjEeSDMPQ6aefrrVr12rhwoXbfO499thDBxxwgObMmaNIJLLV+Ouvv6727durV69eWrVqlaZMmaJjjjlGPXv21EEHHaQLL7ywyuvclsGDB2vy5MlbPV7d+xIOh3XPPffoqKOOUvfu3TVw4EDdfvvtCofD2z3GDTfcoD59+qiiomKrsUsuuUSHHnpockrdt99+q3Hjxumggw5Sz549NXjwYF155ZU7fB3VmT59ugzD0B133FElKVWpR48eOumkkyRtu/9WdT2BJk+erD59+mj16tX6xz/+oT59+mjAgAF6+umnJUk//fSTxowZo969e2vQoEF67bXXqjzntno8vfjii9p77723+3MLh8OaNm2aTjrpJO2///7q3bu3/va3v+mzzz6rEvMhhxySfA8qp4Pde++91R7/2GOPrfYzEI/HNWDAAF144YVVHnvsscc0YsQI9ejRQ/3799e1116roqKibca8I/369ZMk/f7771UeX7x4scaNG6f9999fvXr10qhRo/TVV19V2Wd3zv0te0yNHj26yvS5zf/b/OdfXFysf//738mpoUcddZQeeughxePxKs9fXFysyZMna//991e/fv10xRVXqKSkZKffn80dfPDBkpR8fZU/yxUrVmjy5Mnq16+f9t9/f1155ZXVft4AAEgFVEwBABqkiy66SB06dNDEiROT03MuuOACLV26VKNGjVKbNm1UWFio//3vf1qzZo3atm27W8f75ptv9PLLL+uZZ56RYRjV7rNkyRKlp6erc+fOVR6vrApZsmRJ8qa8OiNHjtQ111yjjz/+WIMGDUo+/tNPP+nnn3/W+eefL8lK5ixcuFAjRoxQq1attGrVKj377LMaM2aM3njjDaWlpe3Wa5WshMR5552nr776Sqeccoo6d+6sn3/+WY8//riWL1+u//znP9v83uHDh+vpp5/WBx98oGHDhiUfr6io0Pvvv68TTzxRbrdb69ev17hx49SsWTONHz9e2dnZWrlypd59992djreiokKfffaZ+vXrp9atW+/Sa96eWCymc845R/369dOkSZP02muv6YYbblBaWpruuusujRw5UkcffbRmzZqlK664Qr1791a7du12+7ilpaWaPXu2jj32WJ188skqKyvTCy+8oLPPPluzZ8/WPvvso5ycHE2ZMkVTpkzRUUcdpaOOOkqSttnwfNiwYZo+fbry8/OVl5eXfPyrr77Sn3/+qeHDhycfu/baa/XSSy/ppJNO0ujRo7Vy5Uo9/fTT+uGHH/Tss8/uUhVSZZIlOzs7+dinn36qc845R927d9eECRNkGIZefPFFnXHGGXrmmWeSn6HaPPfPPfdc/fWvf63y2KuvvqqPP/5YzZs3l2SdV6NGjdK6det02mmnaY899tDChQt15513Kj8/X//6178kSaZp6p///Ke++uornXbaaercubPeffddXXHFFTv9/myuMnnXtGnTKo9ffPHFatu2rS655BL98MMPmj17tnJycnTZZZft1vEAAGiISEwBABqkbt26aerUqcmvi4uLtXDhQl1++eUaN25c8vHamP5imqZuvPFGDR8+XH369NlmdUZ+fr6aN2++VeKq8ub/zz//3O5xjjnmGN144416/fXXqySmKpunV07jO+KII5LTfSoNGjRIp556qubMmaMTTjhhp15fdV577TV98sknevLJJ6sk0/baay9dd911+vrrr9W3b99qv3f//fdXy5Yt9dZbb1VJTH3wwQcqLy9PJj4WLlyooqIiPfzww+rRo0dyv4kTJ+50vCtWrFAkElHXrl13+ntrIhQK6bjjjkueTyNHjtSAAQN01VVX6c4770y+pv79+2vYsGF6+eWXdcEFF+z2cZs0aaJ58+ZVmYJ6yimnaNiwYXryySd18803Kz09Xcccc4ymTJmivffeW8cff/x2n3P48OG65557NGfOHI0aNSr5+Jtvvqn09HQdccQRkqQFCxZo9uzZuuOOO6pMIT3ooIN09tln6+23367R1NLK6qrK5OEzzzyjnJyc5JRV0zQ1ZcoUHXTQQZo5c2by83PaaadpxIgRuvvuu/XII49Iqt1z/9BDD63y9ddff63PP/9cf/nLXzRw4EBJ0qOPPqo//vhDL730kjp27JiMq0WLFnr44Yd11llnaY899tDcuXP15Zdf6rLLLtPZZ58tSTr99NM1ZsyYGscjSWVlZSosLFQ0GtWSJUv073//W4Zh6Oijj66y3z777KObb745+fXGjRv1wgsvkJgCAKQkpvIBABqk0047rcrXgUBAXq9XX3zxxW5NM6rOiy++qJ9//lmTJk3a7n7BYLDaHlZ+vz85vj1NmjTRwIEDNW/ePJWXl0uybtrfeOMNde/eXZ06dZJkvdZKkUhEGzZsUPv27ZWdna0ffvhhp17btrz99tvq3Lmz9txzTxUWFib/q5xatL3V3wzD0NChQ/Xhhx+qrKws+fhbb72lli1bav/995ckZWVlSbISVtVNX9wZpaWlkqSMjIzdep7tOfnkk5Pb2dnZ6tSpk9LS0qok3/bcc09lZ2fv8kpqW3K73clzKh6Pa+PGjYpGo+revfs
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKQAAAK1CAYAAAD2eTbUAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4lGXWx/Hv9EkllYTQixSliCIKgiAKqLj23hXrioqCir6uqLiKrFgQV1nZtTdsuxYQO6JiRxAU6R1CCumZ/rx/DBmIBEiZZGaS32cvrn0yc8/znJnciTMn5z63yTAMAxERERERERERkSZijnQAIiIiIiIiIiLSsighJSIiIiIiIiIiTUoJKRERERERERERaVJKSImIiIiIiIiISJNSQkpERERERERERJqUElIiIiIiIiIiItKklJASEREREREREZEmpYSUiIiIiIiIiIg0KSWkRERERERERESkSSkhJSIiEmYXX3wxF198caTDkFr67rvv6NGjB999911Yz9ujRw+eeOKJsJ4z2v157m/evJkePXrw9ttvN2kckyZNYsSIEU16TREREakbJaRERKRZWLNmDWPHjqV///4MHDiQW2+9lcLCwv0+5qOPPqJHjx688cYb+xzz9ddf06NHD1544YVwh9ysuN1unnvuOc4++2wOP/xw+vTpw+jRo7nvvvtYt25dpMNrNAsWLIi6pFOPHj2q/TvssMO46KKL+OKLLyIdWtS5+OKLq71WAwcO5Mwzz+TNN98kEAjU+Xxvv/02PXr04Ndff22EaEVERJoXa6QDEBERaajt27dz4YUXkpSUxM0330xFRQX/+c9/WLlyJW+88QZ2u73Gxw0fPpykpCTee+89zj777BrHvP/++1gsFsaMGdOYTyGmFRYWcuWVV7J8+XKOPfZYTj75ZOLj41m3bh1z585lzpw5LFu2LNJhNooFCxbw8ssvc8MNN+x139KlS7FYLBGICo4++mhOPfVUDMNg69atvPrqq1x77bU888wzDB06tMniaNu2LUuXLsVqjd63nNnZ2dxyyy0A7Ny5k//+97/83//9H+vXr2fixIkRjk5ERKT5it53ByIi0mgqKiqIj4+PdBhh8/TTT1NZWcnbb79NTk4OAH379uXyyy/nnXfe4dxzz63xcXa7ndGjR/P222+Tm5tLVlZWtfvdbjcff/wxgwcPJj09vdGfR6y64447+P3335kxYwajR4+udt/48eN59NFHIxRZZDkcjohdu1OnTpx66qmhr0ePHs1JJ53ECy+80KQJKZPJFNHXoTaSkpKqvVbnnnsuJ5xwAi+//DI33XQTNpstgtGJiIg0X1qyJyLSzD3xxBP06NGD1atXM2HCBI444gguuOACAFasWMGkSZM47rjj6NOnD0cffTR33HEHO3furPEcGzZsYNKkSQwYMIDDDz+cO+64g8rKympjXS4X999/P0ceeST9+/fn2muvJTc3t8Z+Orm5udxxxx0MHjyY3r17M2bMGN588806P8ePPvqI4cOHh5JRAIMHD6ZTp07Mmzdvv4895ZRTCAQCzJ07d6/7vvjiC0pLS/nLX/4CwFtvvcUll1zCoEGD6N27NyeddBKvvPLKAeOrWsazefPmarfvq3fRkiVLGDt2LIcffjj9+vXjoosu4qefftrvNfLz8zn44IOZOXPmXvetXbuWHj168NJLLwHg9XqZOXMmo0aNok+fPhx55JGcf/75fP311wd8Ln+2ZMkSvvjiC84666y9klEQTPrdfvvtoa/31V/rzz1/qnoP/fvf/+bll1/muOOOo1+/flxxxRVs27YNwzB48sknOeaYY+jbty/XXXcdRUVF1c65rx5OI0aMYNKkSft9Xj/++CM33ngjw4cPp3fv3gwbNowHHngAl8tVLeaXX345dK2qfzVd/8MPP6RHjx58//33e13rtddeo0ePHqxcuTJ025o1a7jxxhsZOHAgffr04YwzzuDTTz/db8z707VrV1JTU9m4cWO12z0eDzNmzGDkyJGh5zlt2jQ8Hk+1cfWd+3/uIVU152v69+eeTwsWLOCCCy7g0EMPpX///lx99dWsWrVqr2t88sknnHzyyfTp04eTTz6Zjz/+uK4vTzVxcXH069ePioqK0LLfHj16cN9994WuVfX76ssvv2zQtURERFoyVUiJiLQQN910Ex07duTmm2/GMAwAvvnmGzZt2sQZZ5xBZmYmq1atYs6cOaxevZo5c+ZgMpmqnWP8+PG0a9eOW265hd9++4033niDtLQ0br311tCYSZMmMW/ePE499VT69evHDz/8wNVXX71XPPn5+ZxzzjmYTCYuvPBC0tLS+PLLL/m///s/ysrKuOyyy2r1vHJzcykoKKB379573de3b98DfmA84ogjyM7O5r333uPyyy+vdt/7779PXFwcxx9/PACvvvoqBx10ECNGjMBqtfL5559z7733YhgGF154Ya3iPZBFixZx1VVX0bt3b8aNG4fJZOLtt9/m0ksv5ZVXXqFv3741Pi4jI4MjjjiCefPmMW7cuGr3zZ07F4vFwgknnADAzJkzmTVrFmeffTZ9+/alrKyMZcuWsXz5co4++ug6xfvZZ58BVKswCaf33nsPr9fLxRdfTFFREbNnz2b8+PEcddRRfPfdd1x11VVs2LCBl156iYceeogHH3wwLNf98MMPcblcnH/++aSkpLB06VJeeukltm/fzowZM4BgJc2OHTv4+uuvmTZt2n7PN3z4cOLj45k3bx4DBw6sdt/cuXM56KCD6N69OwCrVq3i/PPPJysri6uuuir0uOuvv54nnniCkSNH1vn5lJaWUlJSQocOHUK3BQIBrrvuOn766SfOOeccunbtysqVK3n++edZv349//znP0NjwzX3u3btutdrVVpaytSpU0lLSwvd9t///pdJkyYxZMgQJk6cSGVlJa+++ioXXHAB77zzDu3atQPgq6++4oYbbqBbt25MmDCBnTt3cscdd5CdnV3n12hPmzdvxmKxkJycHLrtp59+4qOPPuKCCy4gISGBF198kRtvvJHPP/+c1NTUBl1PRESkJVJCSkSkhejZsyfTp0+vdtsFF1zAFVdcUe22Qw89lFtuuYWffvqJAQMGVLuvV69ePPDAA6Gvi4qKePPNN0MJqeXLlzNv3jwuvfRS7rzzTgAuvPBC7rjjDlasWFHtXI8++ih+v5/33nsv9GHu/PPP55ZbbmHmzJmcd955OJ3OAz6vHTt2AJCZmbnXfZmZmRQVFeHxePbZR8psNjNmzBj+/e9/s27dOjp37gxAWVkZCxYsYOTIkSQkJADw0ksvVYvpoosuYuzYsTz77LNhSUgZhsE999zDkUceyezZs0MJwfPOO48xY8bw2GOP8Z///Gefjz/ppJO4++67WblyZSi5ATBv3jyOOOIIMjIygGDl17Bhw5gyZUqDY16zZg1AteuFU25uLh999BFJSUlAMIkya9YsXC4Xb731Vqg30c6dO3nvvfe499579/m9rouJEydW+16fe+65dOzYkUceeYStW7eSk5ND//796dSpE19//fUBE3JOp5MRI0Ywf/587rrrrlBvqby8PH744YdqScS///3vtGnThrfeeiv0XC644ALOP/98Hn744VolpNxud6i6Z+vWrTz22GP4/f5qVWzvvfce33zzDS+++GK1n/WDDjqIyZMn8/PPP3PYYYcB4Zv7GRkZ1V4rwzC47rrrsNlsTJ06FYDy8nL+/ve/c/bZZ1ebo6effjonnHACs2bNCt3+8MMPk56eziuvvBKaIwMHDuSKK66gbdu2tYrJ7/eHXqudO3fy6quvhvqhxcXFhcatWbOGuXPnhpJ6Rx55JKeeeioffPABF110Ua1fAxEREQnSkj0RkRbivPPO2+u2PT9gVn2A7devHxBMLh3oHAMGDKCoqIiysjIAFi5cCBBaEljlzx/WDMPgo48+YsSIERiGQWFhYejfkCFDKC0trfH6NXG73QA1JiGqetfsucyqJqeccgoQrIiqMn/+fNxud2i5HlR/vUpLSyksLGTgwIFs2rSJ0tLSWsW7P7///jvr16/nL3/5Czt
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA89tJREFUeJzs3Xd8FHX+x/HXbE0HkkCoUgVUqmJDEMWCimc9u6JiP7GXA8+z/2wnVrwT5c5eDutZQPRQEbGhp2AB6SAtpED69vn9MexCIEBCNtndyfv5ePBgsvPNzGc3s0nmk8/38zVM0zQRERERERERERFpRo5EByAiIiIiIiIiIi2PklIiIiIiIiIiItLslJQSEREREREREZFmp6SUiIiIiIiIiIg0OyWlRERERERERESk2SkpJSIiIiIiIiIizU5JKRERERERERERaXZKSomIiIiIiIiISLNTUkpERERERERERJqdklIiIiJxct5553HeeeclOgypp2+++YY+ffrwzTffxPW4ffr04YknnojrMZPdttf+6tWr6dOnD2+99VazxjF+/HhGjhzZrOcUERGR3aeklIiIpLRIJMIrr7zCiSeeyIABAzjwwAMZM2YMCxcu3OHnfPTRR/Tp04fXX399h2PmzJlDnz59eOGFF5oibNvw+/0899xznHbaaey3337079+fUaNGcdddd7F8+fJEh9dkZs2alXSJpz59+tT6t++++3Luuefy2WefJTq0pHPeeefVeq0OOOAATj31VN544w0ikUiDj/fWW2/Rp08ffvrppyaIVkRExL5ciQ5ARESkMW655Rbee+89TjzxRM4991yqq6tZsGABJSUlO/ycww47jOzsbN577z1OO+20Ose8//77OJ1ORo8e3VShp7zS0lIuvvhifvnlFw4//HCOP/54MjIyWL58OdOmTWPq1Kn8/PPPiQ6zScyaNYuXX36Zq666art98+fPx+l0JiAqOOSQQzjxxBMxTZO1a9fy6quvcvnll/PMM88wfPjwZoujU6dOzJ8/H5creX/VbN++Pddffz0AGzdu5J133uEvf/kLK1as4MYbb0xwdCIiIi1D8v6mICIicVddXU1GRkaiw4ibadOm8fbbbzNp0iSOOuqoen+ex+Nh1KhRvPXWWxQWFlJQUFBrv9/v5+OPP2bo0KHk5eXFO2zbmDBhAgsWLODxxx9n1KhRtfZde+21PPLIIwmKLLG8Xm/Czt2tWzdOPPHE2MejRo3iuOOO44UXXmjWpJRhGAl9HeojOzu71mt1xhlncMwxx/Dyyy9zzTXX4Ha7ExidiIhIy6DpeyIiNvXEE0/Qp08flixZwg033MD+++/P2WefDcDChQsZP348RxxxBP379+eQQw5hwoQJbNy4sc5jrFy5kvHjxzNkyBD2228/JkyYQE1NTa2xPp+Pe+65hwMPPJDBgwdz+eWXU1hYWGd/ncLCQiZMmMDQoUPp168fo0eP5o033mjwc3zuuecYMGAARx11FJFIhOrq6np/7gknnEAkEmHatGnb7fvss8+oqKjgD3/4AwBvvvkmY8aM4eCDD6Zfv34cd9xxvPLKK7s8R3RKz+rVq2s9vqNeRvPmzeOiiy5iv/32Y+DAgZx77rl8//33Oz1HcXExe++9N5MmTdpu37Jly+jTpw8vvfQSAMFgkEmTJnH00UfTv39/DjzwQM466yzmzJmzy+eyrXnz5vHZZ5/xxz/+cbuEFFiJvz//+c+xj3fUb2vbHkDRXkT//Oc/efnllzniiCMYOHAgY8eOZd26dZimyZNPPsmhhx7KgAEDuOKKK9i0aVOtY+6op9PIkSMZP378Tp/Xd999x9VXX81hhx1Gv379GDFiBPfeey8+n69WzC+//HLsXNF/dZ3/ww8/pE+fPnz77bfbneu1116jT58+LFq0KPbY0qVLufrqqznggAPo378/p5xyCjNnztxpzDvTs2dP2rRpw6pVq2o9HggEePzxxznqqKNiz/PBBx8kEAjUGre71/62PaWi13xd/7btATVr1izOPvtsBg0axODBg7n00ktZvHjxduf473//y/HHH0///v05/vjj+fjjjxv68tSSnp7OwIEDqa6uprS0FLC+lnfddVfsXNHvV59//nmjziUiIiIWVUqJiNjcNddcQ9euXbnuuuswTROAL7/8kt9//51TTjmFtm3bsnjxYqZOncqSJUuYOnUqhmHUOsa1115L586duf766/n11195/fXXyc3N5aabboqNGT9+PNOnT+fEE09k4MCBzJ07l0svvXS7eIqLizn99NMxDINzzjmH3NxcPv/8c/7yl79QWVnJBRdcUK/nVVlZyfz58zn77LN5+OGHefHFF6murqZz587ccMMNHHfccTv9/P3335/27dvz3nvvceGFF9ba9/7775Oens6RRx4JwKuvvsqee+7JyJEjcblcfPrpp9x5552Ypsk555xTr3h35auvvuKSSy6hX79+jBs3DsMweOuttzj//PN55ZVXGDBgQJ2fl5+fz/7778/06dMZN25crX3Tpk3D6XRyzDHHADBp0iQmT57MaaedxoABA6isrOTnn3/ml19+4ZBDDmlQvJ988glArUqTeHrvvfcIBoOcd955bNq0iSlTpnDttddy0EEH8c0333DJJZewcuVKXnrpJR544AHuu+++uJz3ww8/xOfzcdZZZ9G6dWvmz5/PSy+9xPr163n88ccBq6Jmw4YNzJkzhwcffHCnxzvssMPIyMhg+vTpHHDAAbX2TZs2jT333JPevXsDsHjxYs466ywKCgq45JJLYp935ZVX8sQTTzSoGjCqoqKC8vJy9thjj9hjkUiEK664gu+//57TTz+dnj17smjRIp5//nlWrFjB3//+99jYeF37PXv23O61qqio4P777yc3Nzf22DvvvMP48eMZNmwYN954IzU1Nbz66qucffbZvP3223Tu3BmAL774gquuuopevXpxww03sHHjRiZMmED79u0b/BptbfXq1TidTnJycmKPff/993z00UecffbZZGZm8uKLL3L11Vfz6aef0qZNm0adT0REpKVTUkpExOb69u3LxIkTaz129tlnM3bs2FqPDRo0iOuvv57vv/+eIUOG1Nq31157ce+998Y+3rRpE2+88UYsKfXLL78wffp0zj//fG655RYAzjnnHCZMmLBdw/FHHnmEcDjMe++9F7uhO+uss7j++uuZNGkSZ555Jmlpabt8XqtWrcI0TT744ANcLhc33XQT2dnZvPDCC1x//fVkZWVx6KGH7vDzHQ4Ho0eP5p///CfLly+ne/fugJXsmjVrFkcddRSZmZkAvPTSS7ViOvfcc7nooot49tln45KUMk2TO+64gwMPPJApU6bEkoJnnnkmo0eP5tFHH+Vf//rXDj//uOOO47bbbmPRokWxBAfA9OnT2X///cnPzwesCrARI0Zw9913NzrmpUuXAtQ6XzwVFhby0UcfkZ2dDViJlMmTJ+Pz+XjzzTdjvYo2btzIe++9x5133onH42n0eW+88cZaX+szzjiDrl278vDDD7N27Vo6duzI4MGD6datG3PmzNllUi4tLY2RI0cyY8YMbr311livqaKiIubOnVsrkfh///d/dOjQgTfffDP2XM4++2zOOussHnrooXolpfx+f6zKZ+3atTz66KOEw+Fa1WzvvfceX375JS+++GKt9/qee+7J7bffzv/+9z/23XdfIH7Xfn5+fq3XyjRNrrjiCtxuN/fffz8AVVVV/N///R+nnXZarWv05JNP5phjjmHy5Mmxxx966CHy8vJ45ZVXYtfIAQccwNixY+nUqVO9YgqHw7HXauPGjbz66qux/mjp6emxcUuXLmXatGmxxN6BBx7IiSeeyAcffMC5555b79dAREREtqfpeyIiNnfmmWdu99jWN5nRm9iBAwcCVoJpV8cYMmQImzZtorKyEoDZs2cDxKYHRm17w2aaJh999BEjR47ENE1KS0tj/4YNG0ZFRUWd569LdKrepk2b+Pvf/87ZZ5/NH/7wB5577jlat27NP/7xj10e44QTTgCsyqioGTNm4Pf7Y1P3oPbrVVF
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA95tJREFUeJzs3XmcTfUfx/HX3WafMRtj37NkLSK7hEhSfu1pJakUIVtSUSpljZBBtBBtWlCS0K6SJRRF9mVmMPvc9ffHNZcxM1xmubO8n4+HhzPnfu85n3Pne+/c+7nf7+drcLlcLkRERERERERERAqR0dcBiIiIiIiIiIhI6aOklIiIiIiIiIiIFDolpUREREREREREpNApKSUiIiIiIiIiIoVOSSkRERERERERESl0SkqJiIiIiIiIiEihU1JKREREREREREQKnZJSIiIiIiIiIiJS6JSUEhERERERERGRQqeklIiIiIiX6taty+uvv+7rMMRLr7/+OnXr1s3XY/7888/UrVuXn3/+OV+PW9Sd2/c/+ugj6taty4EDBwo1jk6dOjFy5MhCPaeIiBQcs68DEBERkdJly5YtfPTRR2zZsoW//voLu93OX3/9la1deno648aNY8uWLRw+fBin00mVKlX43//+x1133YXFYsn1HC+88AJvv/02X331FdWqVcuxzZQpU5g9ezbLly+nXr16+XZ9JU1cXBzz5s1j7dq1HD58GIPBQM2aNencuTN9+vQhLCzM1yEWiHfffZfAwEB69+7t61AAdzLs3nvv9fxsNBoJDw/nqquuYtCgQdSqVcuH0RU9ZycjDQYD0dHR1KlTh4cffpiWLVte9PFGjhzJl19+yaZNm/IzTBGRUk9JKRERESlU69at44MPPqBOnTpUrlyZvXv35tguPT2d3bt30759eypVqoTRaGTTpk289NJLbNmyhUmTJuV6jp49e/L222/z2WefMXDgwBzbfP7559SpU0cJqfPYsmUL/fv3JzU1lRtvvJEGDRoAsG3bNubOncuvv/7K/PnzfRxlwVi8eDERERHZklJXXXUVW7ZsOW9StCDdc889NGrUyJPMXbJkCT///DOff/45ZcuWLbQ4evXqRY8ePfDz8yu0c16sNm3a0KtXL1wuFwcOHGDx4sXcd999zJkzhw4dOvg6PBERQUkpERGRIi81NZWgoCBfh5Fv7rzzTh566CECAgIYN25crkmp8PBwli5dmu2+oaGhvPPOO4wcOTLXD+FNmjShWrVqfPHFFzkmpTZt2sSBAwcYOnRonq+npEpMTGTgwIGYTCY+/vjjbCNxnnzyyWy/n9LAaDTi7+/vs/M3b96cbt26eX6uUaMGzz33HJ988gkPPfRQocVhMpkwmUyFdr5LUb16dXr16uX5uUuXLtx4440sWrRISSkRkSJCNaVERESKkMwaOLt372bo0KFcddVV3HXXXQDs3LmTkSNHcu2119KoUSPatGnDqFGjOHHiRI7H+O+//xg5ciTNmzenWbNmjBo1irS0tCxt09PTeeGFF2jZsiVXXHEFAwYM4OjRoznWTjp69CijRo2idevWNGzYkB49evDBBx9c9DVGR0cTEBBw0ffLVKlSJcCdNDmfnj178u+///Lnn39mu+3zzz/HYDBwww03YLVamTZtGr1796ZZs2Y0bdqUu+66i59++umCsYwcOZJOnTpl259bLaPly5fTu3dvGjduTIsWLXjyySc5fPjwec+xatUq6tatyy+//JLttiVLllC3bl3+/vtvAI4fP86oUaNo3749DRs2pG3btjzyyCOXVPdnyZIlHD16lJEjR+Y4NSw6OppHH33U83Nu9bbOrQGUWYvo119/5YUXXuDqq6+mefPmjB07FqvVSmJiIsOHD+eqq67iqquuYuLEibhcLs/9c6vpdODAAerWrctHH3103uv68MMPuffee2nVqhUNGzbk+uuv57333ssW865du/jll1+oW7cudevW5Z577snx/OPGjeOKK67I9twCGDJkCG3atMHhcHj2rVu3jrvuuoumTZtyxRVX0L9/f3bt2nXemM+nefPmAOzfvz/Lfm+er3np++fWlMrs8zn9O/v373Q6eeutt+jRoweNGjWidevWjB07llOnTmU5vsvl4o033qB9+/Y0adKEe+65J0+PE7j7aEREhCfmzN/lihUrmDVrFu3bt6dRo0bcd999/Pfff3k6l4iIeEcjpURERIqgQYMGUa1aNZ588knPB/IffviB/fv307t3b8qWLcuuXbtYunQpu3fvZunSpRgMhizHGDx4MJUrV2bIkCFs376dZcuWERkZyVNPPeVpM3LkSFauXEmvXr1o0qQJGzdupH///tniiYuL47bbbsNgMHD33XcTGRnJ+vXrefrpp0lOTub+++8vsMfCarWSnJxMRkYG27ZtY/78+VSqVCnXWlGZevbsyYwZM/j88889084AHA4HK1eupHnz5lSsWJGEhASWLVvGDTfcwK233kpKSgoffPAB/fr1Y9myZdSvXz9frmPWrFlMmzaN7t27c8stt5CQkMA777zD3XffzSeffJJrbaaOHTsSFBTEypUradGiRZbbVqxYwWWXXUadOnUAePzxx9m9ezd9+vShUqVKJCQk8P3333P48GEqV658UfF+8803BAQEcN11113aBV/ACy+8QHR0NI8//jibN2/m/fffJzQ0lE2bNlGhQgWefPJJ1q9fz7x586hTpw433XRTvpx38eLFXHbZZXTq1Amz2czatWt5/vnncblc3H333QCMHj2a8ePHExQUxIABAwB3Ei4n119/Pe+++y7ffvst3bt39+xPS0tj7dq13HzzzZ4RRZ988gkjR46kbdu2DBs2jLS0NBYvXsxdd93Fxx9/fNG/I4CDBw8CZOk/3j5fk5OT863vd+nShapVq2bZ9+eff7Jw4UIiIyM9+8aOHcvHH39M7969ueeeezhw4ADvvvsu27dvZ/HixZ5pkdOmTWPWrFl06NCBDh068Oeff/Lggw9is9ku+jHKdOrUKRITE7O9dsydOxeDwcCDDz5IcnIysbGxDBs2jGXLll3yuURExDtKSomIiBRB9erVy1Yz6a677uLBBx/Msq9p06YMGTKE3377zTNiIlP9+vWZMGGC5+eTJ0/ywQcfeJJSf/75JytXruS+++5j9OjRANx9992MGjWKnTt3ZjnWlClTcDgcfPbZZ0RERADuqXRDhgxhxowZ3HHHHXka/XQ+q1evZsiQIZ6fGzZsyIQJEzCbz/82pnr16jRq1IgVK1bw1FNPYTS6B4j/8MMPxMfHM2jQIADKlCnDN998k6U2zm233Ub37t15++23szyGl+rgwYO8/vrrDB482JPkAOjatSs333wz7733Xpb9ZwsICKBTp058+eWXjBkzxpPgOH78OBs3bvRMT0xMTGTTpk0MHz6cvn37eu7/8MMPX1LM//77L9WrVy+wmkFRUVGeZMDdd9/Nvn37mDdvHrfffjvPP/88ALfffjudOnXiww8/zLek1DvvvJOlr/bp04e+ffuyYMECT1Kqc+fOTJ06lYiIiCzTv3LSrFkzYmJiWLlyZZak1LfffktqairXX389ACkpKbz44ovceuutjB8/3tPu5ptvplu3bsyZMyfL/tykpKSQkJDgqSk1YcIEDAYDXbt29bTx9vman32/Xr16WeqzJSQkMHXqVOrUqePpo7/++ivLli3jtddeo2fPnp62LVu2pF+/fqxatYqePXuSkJBAbGwsHTt2ZPbs2Z6Ee+biBN7KyMggISEBcI+kmzx5Mg6HI8v0x8x2n3zyiedxCAsL48UXX+Tvv//2JHxFRKRgaPqeiIhIEXTHHXdk23f2B+nMD1tNmjQByHGK2rnHaN68OSdPniQ5ORmADRs2AHimB2bq06dPlp9dLhdfffUVnTp1wuVykZCQ4PnXtm1bkpKScjx/fmnZsiULFixg2rRp3HHHHVgslhynSuXkxhtv5MiRI2zcuNGz7/PPP8disXg+mJpMJs+HUafTycmTJ7Hb7TRs2JDt27fnyzWsXr0ap9NJ9+7dszx+0dHRVKtWLdtUtHN1796
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA+z9JREFUeJzs3Xd4VGXax/Hf9HQgBEIvgoAKCIiKCKKoKMWCq1ixwbIqrIpYQF372lZeRXEVZS24KuKqqyhFxcYqFlzssCqCCEJIAVKnn/ePwwyEBJjUM5P5fq6Li5NznszcMzmTybnnfu7HZhiGIQAAAAAAAKCR2a0OAAAAAAAAAMmJxBQAAAAAAAAsQWIKAAAAAAAAliAxBQAAAAAAAEuQmAIAAAAAAIAlSEwBAAAAAADAEiSmAAAAAAAAYAkSUwAAAAAAALAEiSkAAAAAAABYgsQUAAAJauPGjerZs6deffVVq0NBjKZPn67hw4fX622++uqr6tmzpzZu3FivtxvPqjv3H3nkEfXs2bPRY+nZs6ceeeSRRr9fAACaCqfVAQAAYKVwOKx///vfevvtt7V69Wrt2LFDHTp00KhRozRhwgR5PJ4q3/Pyyy/rqaee0saNG9W2bVuNHz9e48eP3+f9XHbZZVqxYoU+/vhjZWRkVDtm2rRpWrp0qZYvX64WLVrUy+NrijZs2KC5c+fq448/1tatW+VyudSjRw+NHDlSZ599tlJSUqwOsUE8/vjj6t69u0444QSrQ5FkJsRmzJgR/drhcKhly5Y6+uijNXXqVOXm5loYXXzZuHGjjj/++OjXdrtdubm5OuSQQzRlyhQddNBBNb7N8ePHa9u2bXrzzTfrM1QAABodiSkAQFKrqKjQjBkz1K9fP51zzjlq2bKlVq1apUceeUQrVqzQvHnzZLPZouPnz5+vW2+9VSeddJIuueQSrVy5UnfddZcqKio0adKkvd7Pqaeeqvfff1/vvvuuTj/99GrjeO+99zRkyBCSUvvwwQcf6KqrrpLb7dZpp52mHj16KBAI6Msvv9Tf/vY3/fzzz7rzzjutDrNBzJkzRyeddFKVxNRpp52m0aNHy+12WxLXlVdeqQ4dOsjv9+urr77Sa6+9pi+//FJvvvlmtYndhnL55Zfv8zUYD8aMGaNjjjlG4XBYa9eu1YsvvqiPPvpICxYsqFVyCgCApoDEFACgxsrLy5WWlmZ1GPXC5XLpxRdf1IABA6L7xo0bp/bt20eTU4MHD5Ykeb1ePfjggzr22GP18MMPR8eGw2E99thjOvvss9WsWbNq72f48OFKT0/XwoULq01MLVu2TOXl5Tr11FPr/0E2Eb/99pumTp2qdu3a6dlnn1Xr1q2jx84//3z9+uuv+uCDD6wL0CIOh0MOh8Oy+z/mmGPUp08fSdJZZ52lFi1a6Mknn9SyZcs0atSoRovD6XTK6YzvP20PPvhgnXbaadGvBwwYoMsvv1wvvvii7rjjDgsjAwDAOvSYAgDsU6Rvy88//6xp06bp8MMP13nnnSdJWrNmjaZPn67jjz9effr00dFHH60ZM2Zo27Zt1d7Gr7/+qunTp2vgwIE67LDDNGPGDFVUVFQa6/V6ddddd+nII49U//79ddlllykvL6/aPi55eXmaMWOGBg8erN69e2v06NH617/+VaPH53a7KyWlIk488URJ0tq1a6P7PvvsM23fvj36+CPOP/98lZeX7zMpkpKSohEjRujTTz9VYWFhleNvvvmm0tPTNXz4cG3fvl333XefTjnlFPXv318DBgzQxIkTtWbNmv0+nr1NK6yut1E4HNYzzzyj0aNHq0+fPho8eLBuueUW7dixY5/38Y9//EM9e/bUpk2bqhybOXOmevfuHb2N9evX689//rOOPvpo9enTR8ccc4ymTp2qkpKS/T6WPc2dO1fl5eX661//WikpFdG5c2dddNFFkvbdf2vPcylyfq5bt07XXnutDjvsMA0aNEgPPfSQDMPQ5s2bdfnll2vAgAE6+uij9dRTT1W6vb31ePrss8/Us2dPffbZZ/t8XP/4xz90zjnn6Mgjj1Tfvn11xhlnaMmSJVViLi8v12uvvaaePXuqZ8+emj59erX3/6c//anStLHdnX322TrjjDMq7Xv99dd1xhlnqG/fvjriiCM0depUbd68eZ8x78vAgQMlmYnE3a1du1ZXXnmljjjiCPXp00dnnHGGli1bVmlMXc79PXtMTZ8+Pfpc7flv95+/3+/Xww8/rBNPPFG9e/fWsGHDdP/998vv91e6fb/fr7vvvluDBg2K/m7asmVLjZ+f3Q0aNEiSoj+7yM/yyy+/1D333KNBgwapX79+mjx5soqKiup0XwAAxKv4/lgJABA3rrrqKnXu3FlTp06VYRiSpE8++US//fabzjjjDLVq1Uo//fSTFixYoJ9//lkLFiyoNAVOkq6++mp16NBB11xzjX744Qe9/PLLys7O1nXXXRcdM336dC1evFinnXaaDj30UH3xxRfVTs8pKCjQuHHjZLPZdP755ys7O1sfffSRbrrpJpWWluriiy+u0+MtKCiQpErT6n744QdJUu/evSuNPeSQQ2S327V69epK1RB7OuWUU/Taa69p8eLFuuCCC6L7t2/frv/85z8aPXq0UlJS9NNPP+ndd9/VySefrA4dOqigoEAvvfSSLrjgAr311lv11rvnlltu0WuvvaYzzjhD48eP18aNG/X888/rhx9+0IsvviiXy1Xt940cOVJ/+9vftHjxYk2cOLHSscWLF+voo49Ws2bN5Pf7NWHCBPn9fl1wwQXKyclRXl6ePvjgAxUXFyszM7NG8b7//vvq2LFjtYnE+jB16lR169ZN06ZN04cffqjHHntMzZs31/z58zVo0CBde+21Wrhwoe677z716dNHhx9+eL3c77x58zR8+HCdcsopCgQCeuutt3TVVVdpzpw5OvbYYyVJ999/v26++Wb17dtX48aNkyR16tSp2tsbOXKkbrjhBn3zzTfq27dvdP+mTZv01Vdf6frrr4/ue+yxxzRr1iyNHDlSZ555poqKivTPf/5T559/vv79738rKyurxo8nkrDc/Xt/+uknnXvuucrNzdUf//hHpaWlafHixZo8ebIeeeSRaCL4t99+q7dz/+yzz9ZRRx1Vad/y5cu1cOFCZWdnSzKTs5dffrm+/PJLjRs3Tt26ddOPP/6oZ599VuvXr9ff//736PfedNNNeuONNzRmzBgNGDBAn376aZ2nDm7YsEGS1Lx580r777rrLmVlZWnKlCnatGmTnn32Wd1xxx166KGH6nR/AADEIxJTAICY9OrVSzNnzqy077zzztOll15aaV+/fv10zTXX6Msvv4xWTkQcdNBBuvvuu6Nfb9++Xf/617+iianvv/9eixcv1kUXXaQbb7xRklmNNGPGjCoVEw8++KBCoZAWLlwYTR6de+65uuaaazR79mydc845dWqCPXfuXGVkZOiYY46J7svPz482eN6d2+1W8+bNtXXr1n3e5qBBg9SqVSu9+eablRJTS5YsUSAQ0CmnnCLJrI5ZunSp7PZdhc2nnXaaRo4cqX/961+aPHlyrR9XxMqVK/Xyyy/rgQceiN6vJB155JGaOHGilixZUmn/7tq1a6d+/fpp0aJFlRJT33zzjX777TdNmTJFklkhs3HjRs2aNUsnn3xydFzkeE2UlpYqLy9vr5VA9aFv377R6VRnn322hg8frnvvvVfXXHNNNAExZswYDR06VK+88kq9JaaWLl1a6Vw9//zzdcYZZ+jpp5+OJqZOO+003XbbberYseM+k5+SdMIJJ8jtdmvx4sWVElOLFy+WzWbTyJEjJZkJpEceeURXX321Lrvssui4ESNGaOzYsXrhhRcq7d+b0tJSFRUVye/36+uvv9bs2bPldrt13HHHRcf89a9/Vdu2bfXKK69Ee2Gdd955Ovfcc/XAAw9EE1P1ee73799f/fv3j37966+/6s4779TRRx+tc845R5K0cOFCffLJJ3ruuecq/b468MADdeutt+q///2vBgwYoDVr1uiNN97Qeeedp1tvvVWS+XOaNm2a/ve
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4VGXax/HvmZpMMgGSQEKvNiA0URQXEayI2FbXsmKvK3ZXERULvraVteGqK/bdta4NRVDBgmtDBaSoKNJLTIG0yfTz/nHIQEgghZCZZH6f6/JymOeZM/dMzkDOPfdzP4ZpmiYiIiIiIiIiIiLNyBbvAEREREREREREJPkoKSUiIiIiIiIiIs1OSSkREREREREREWl2SkqJiIiIiIiIiEizU1JKRERERERERESanZJSIiIiIiIiIiLS7JSUEhERERERERGRZqeklIiIiIiIiIiINDslpUREREREREREpNkpKSUiIjH77LMPd955524fZ926deyzzz48/fTTTRCVfP311+yzzz58/fXX8Q5F6mn8+PGMHz++SY/56KOPss8++zTpMRNdbef+xIkTGT16dLPGUfV32htvvNGszysiItLaOeIdgIiI1G3GjBkUFRVx7rnnxjuUZvf5558zc+ZMfvjhB1asWEHHjh2ZO3dunY975513+Otf/4rH42HBggUNes5ffvmFRx99lKVLl1JYWEhKSgp9+vThggsuqPNieNy4cZSVlfHxxx9jGEatc04//XTWrFnDZ599hsOhf4p35scff+Tpp59m/vz5FBUV4fF46Nu3L+PGjePEE0/EbrfHO8QmV1lZyfTp0znwwAMZNmxYvMMBrGTYtGnTYn92OBzk5OQwevRorrzySjIyMuIYXWL5+uuvOfvss2N/djgc5Obmsv/++3PFFVfQtWvXBh9z9OjR7LXXXjz55JNNGaqIiEhC0G/CIiItwLvvvssvv/ySlEmpd999l5kzZ9K3b186dOhQr8dUVFTwt7/9DY/H06jn3LBhAxUVFZx00kl06NCByspKPvjgAy677DLuvPNOTjvttJ0+dty4cUydOpVvv/2WAw44oMb4unXrWLhwIWeddZYSUrvw2muvcdttt5GVlcUJJ5xA9+7dqaio4KuvvuLmm2+moKCASy+9NN5hNrnKykqmTZvGhAkTaiSlLrvsMi6++OI4RQa33347Ho+HyspKvvzyS1588UWWLl3KSy+91KxxTJkyBdM0m/U5G2r8+PHk5eURDodZtmwZr7zyCp9++invvPMOOTk58Q5PREQkYei3YRERSWjXXHMNU6ZMwel0cskll/DLL7/U+ZjHH3+ctLQ0hg0bxpw5cxr8nCNHjmTkyJHV7jvrrLM4+eSTefbZZ+tMSv39739nxowZtSal3nvvPUzTZNy4cQ2OK1ksXLiQ2267jUGDBvHPf/6T9PT02Ni5557L4sWL63UetDYOhyOuicyjjz6azMxMwKr2u+aaa2JVjAMGDGi2OJxOZ7M9V2MNHTqUY445BoA//vGP9OjRg7vuuou33nqLSy65JM7RiYiIJA71lBIRibPy8nL+7//+j9GjR9O/f38OPvhgzjvvPJYuXQpY37h/8sknrF+/nn322Yd99tmn2hKyoqIiJk2axPDhw8nLy+P444/nzTffrPE80WiU559/nnHjxpGXl8dBBx3EBRdcwOLFi2vM/eijjzjuuOPo378/Y8eO5bPPPtvt12maJrfeeiv9+/fngw8+qPfjcnJyGnQRumrVKp577jluuummJr2At9vtdOzYkbKysl3O69ixIwcccACzZ88mFArVGH/33Xfp1q0bAwcOZP369dx+++0cffTRDBgwgGHDhnHllVeybt26OuMZPXo0EydOrHF/bb2MgsEgjzzyCEceeST9+/dn5MiR3H///QSDwV0+x5133sngwYOprKysMXbttddyyCGHEIlEAFi8eDEXXHABw4YNY8CAAYwePZqbbrqpztdRm2nTpmEYBg888EC1hFSVvLw8Tj75ZGDn/bZq6wE0ceJEBg8ezIYNG7jkkksYPHgwI0aM4N///jcAP//8M2effTaDBg1i1KhRzJgxo9oxd9bT6Y033mCfffbZ5c8tGAzy8MMPc/LJJ7P//vszaNAgzjzzTL766qtqMR988MGx96Dq8/7oo4/W+vzHHXdcrX2rotEoI0aM4Morr6x233PPPcfYsWPJy8tj+PDhTJ48mZKSkp3GXJehQ4cCsGbNmmr3L1q0iAsuuID999+fgQMHctZZZ/Hdd99Vm7M75/6OPaXGjx8fe692/G/7n39paSn/93//x8iRI+nfvz9HHnkk//znP4lGo9WOX1paysSJE9l///0ZOnQoN954Y52f+7ocdNBBALHXV/WzXL16NRMnTmTo0KHsv//+3HTTTbV+3kRERForVUqJiMTZbbfdxuzZsznrrLPo3bs3W7Zs4bvvvmPFihX069ePSy+9lLKyMjZt2hS7yE9LSwPA7/czfvx41qxZw5///Ge6dOnCrFmzmDhxIqWlpZxzzjmx57n55pt54403OPTQQznllFOIRCJ8++23LFq0iLy8vNi87777jg8++IAzzzyTtLQ0XnzxRa688ko+/vhj2rVr16jXGIlEmDRpEjNnzmTatGkcdthhjX/D6nD33XczbNgwRo4cyfvvv79bx/L5fPj9fsrLy5k7dy6fffYZY8aMqfNx48aN49Zbb+Xzzz9n1KhRsft//vlnli9fzuWXXw5YiZwFCxYwduxYcnNzWb9+PS+99BJnn3027733HqmpqbsVP1jJiMsuu4zvvvuOP/3pT/Tu3Zvly5fz/PPPs2rVKv7xj3/s9LHHHnss//73v/nkk0+qve7Kyko+/vhjTjrpJOx2O0VFRVxwwQW0a9eOiy++mIyMDNatW8eHH37Y4HgrKyv56quvGDp0KJ06dWrUa96VSCTCRRddxNChQ7n++uuZMWMGd955J6mpqTz44IOMGzeOo446ipdffpkbb7yRQYMGNaoP0I7Ky8t57bXXOO644zj11FOpqKjg9ddf58ILL+S1115jv/32IzMzk9tvv53bb7+dI488kiOPPBJgp83Nx4wZw7Rp0ygoKKB9+/ax+7/77jt+//13jj322Nh9kydP5s033+Tkk09m/PjxrFu3jn//+98sW7aMl156qVHVR1UJlu17Sn355ZdcdNFF9O/fnwkTJmAYBm+88QbnnHMO//nPf2IVVU157l966aWccsop1e575513+Pzzz8nKygKs8+qss84iPz+f008/nY4dO7JgwQL+/ve/U1BQwM033wxYyfO//OUvfPfdd5x++un07t2bDz/8kBtvvLHB78/2qhJ3bdu2rXb/1VdfTZcuXbj22mtZtmwZr732GpmZmfz1r3/drecTERFpKZSUEhGJs08//ZQ//elP1apeLrrootjtQw45hBdeeIHS0lJOOOGEao995ZVXWLFiBX/72984/vjjAWtZzfjx43nooYf44x//SHp6Ol999RVvvPEG48eP55Zbbok9/vzzz6/Rm2XFihXMnDmTbt26ATBs2DBOOOEE3nvvPc4666wGv75wOMxf//pX5s6dy+OPP84f/vCHBh+jvj755BP+97//8fbbbzfJ8e69915eeeUVAGw2G0ceeSSTJ0+u83FHH300U6ZM4d13362WlHr33XcBYkv3DjvssNgSnyqjRo3itNNOY/bs2Zx44om7/RpmzJjBF198wYsvvhirbAHYa6+9uO222/j+++8ZMmRIrY/df//9ycnJ4f3336+WlPrkk0/w+XyxpMeCBQsoKSnh6aefrpbgvOaaaxoc7+rVqwmFQuy9994Nfmx9BAIBjj/++NgSqnHjxjFixAgmTZrE3//+99hrGj58OGPGjOGtt97iiiuu2O3nbdOmDXPnzsXlcsXu+9Of/sSYMWN48cUXufvuu/F4PBx99NHcfvvt7LPPPjU+7zs69thjeeSRR2JJ7SozZ87E4/HEkr/ffvstr732Gg888EC1ZaPDhg3jwgsvZNasWfVaTlpVVVWVOPzPf/5DZmZmbJmqaZrcfvvtDBs2jOn
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4VGXax/HvmZ4KpNCLCAIqRQRFUEDRRQFRsfeGdWWtqOja26orKyq+WLCviqjYUVRs2IVFEESl9xYCyaRMP+8fZ2YgEEglk0l+n+vy8mSeMzP3TM4Zcu65n/sxTNM0ERERERERERERqUO2RAcgIiIiIiIiIiKNj5JSIiIiIiIiIiJS55SUEhERERERERGROqeklIiIiIiIiIiI1DklpUREREREREREpM4pKSUiIiIiIiIiInVOSSkREREREREREalzSkqJiIiIiIiIiEidU1JKRERERERERETqnJJSIiKSdLp27co999xT48dZs2YNXbt25bnnnquFqBquIUOGMG7cuESHIZU0bdo0unbtypo1a2rtMWPnyrRp02rtMZPBzsf+Tz/9RNeuXfnpp5/qNI7zzjuP8847r06fU0REpC4oKSUiIrXmgw8+4MUXX0x0GAlx3nnn0bVr113+Gz16dJUf64EHHmDUqFEceuih9OrVi2HDhvHEE09QXFy8x/u98MILdO3ale+//363+0ydOpWuXbsyc+bMKsfVmBQVFTFx4kROOOEEevfuTc+ePTn++OP597//zcaNGxMd3l5T387hWDIs9l+3bt049NBDueSSS5g7d26iw6t3hgwZUub96t+/P2effTafffZZtR7viSeeoGvXruTn59dypCIiIhZHogMQEZGG48MPP2Tx4sVceOGFiQ4lIVq2bMn1119f5rbmzZtX+XF+++03+vTpw8knn4zb7eb333/nmWee4fvvv+fVV1/FZiv/O6Xhw4fz8MMP88EHHzBgwIBy9/nggw9o2rQpgwYNqnJcjcXq1au58MILWb9+PccddxxnnHEGTqeTP//8k7feeovPP/+cGTNmJDrMvWJ353CbNm2YP38+Dkdi/nQ8/vjjGTRoEJFIhBUrVvDaa69x/vnn89Zbb9G1a9c6i+OQQw5h/vz5OJ3OOnvOqtp///256KKLANi0aRNvvPEGY8aM4a677uKss85KcHQiIiJlKSklIiJSSzIyMjjxxBNr/Divv/76Lre1b9+ehx56iPnz53PQQQeVe78WLVrQr18/PvvsM+6++25cLleZ8Y0bNzJ79mxOP/30en1RnUihUIgxY8awZcsWXn75Zfr27Vtm/LrrruPZZ59NUHSJYxgGbrc7Yc9/wAEHlDm3+vTpw6WXXsrrr7/OXXfdVWdx2Gy2hL4PldGiRYsy79VJJ53E0KFDefHFF5WUEhGRekfT90REpFKKioq4//77GTJkCN27d6d///5cdNFFLFy4ELCmr3311VesXbs2PnVkyJAh8ftv2bKFW2+9lQEDBtCjRw9OOOEE3nnnnV2eJxKJ8NJLLzFy5Eh69OjBYYcdxujRo/ntt9922ffzzz/n+OOPp3v37owYMYJvvvmmxq/TNE1uv/12unfvzqefflrl+4dCoQqn2VVHmzZtACgsLNzjfieccAJer5evvvpql7GPPvqISCTCyJEjAXjuuec488wz6devHz179uTkk0/mk08+qTCW2JSene2ul9HXX3/N2WefzUEHHUTv3r257LLLWLx48R6f47fffqNr167lHiOzZs2ia9eufPnll0DFx2ZVfPrpp/zxxx9cccUVuySkANLT07nuuuviP++u39bOPYBivYimT5/OxIkTGThwIL179+bqq6/G6/USCAS4//776d+/P7179+aWW24hEAjE77+nnk5du3bliSee2OPr+vzzz7nssss44ogj6N69O8cccwxPPvkk4XC4TMy7O4d3fv7nnnuOrl27snbt2l2ea/z48XTv3p2CgoL4bfPmzWP06NH06dOHXr16ce655zJnzpw9xrwnsd/N6tWry9xeWFjI/fffz+DBg+nevTt/+9vfeOaZZ4hEImX2q+6xv3NPqdgxX95/O/eAeu+99zj55JPp2bMnhx56KNdddx3r16/f5TneeOMNjjnmGHr27Mmpp57K7Nmzq/Te7Cw3N5d99903/rvasZde7Lm6d+/OKaecwvz582v0XCIiIlWlSikREamUO++8kxkzZnDuuefSqVMntm3bxpw5c1i6dCkHHnggV1xxBV6vlw0bNnDLLbcAkJaWBoDP5+O8885j1apVnHPOObRt25ZPPvmEcePGUVhYyAUXXBB/nn/+859MmzaNQYMGceqppxIOh5k9ezbz5s2jR48e8f3mzJnDp59+ytlnn01aWhqvvPIKV199NV9++SXNmjWr1msMh8Pceuut8cTBkUceWaX7r1ixgoMOOohgMEhOTg6nnXYaV111VbWqkkKhEIWFhQSDQRYvXsyECRNIS0ujZ8+ee7zf0KFDueuuu/jwww8ZOnRombEPP/yQNm3a0KdPHwBefvllhgwZwsiRIwkGg3z00Udcc801PP3001V+7bvz7rvvMm7cOI444gjGjh1LaWkpr7/+OmeffTbvvPMObdu2Lfd+PXr0oF27dnz88ceMGjWqzNj06dNp0qQJRxxxBFDxsVkVsV5btVHxVp5nnnkGj8fDZZddxsqVK/nvf/+Lw+HAMAwKCwsZM2YM8+bNY9q0abRp04YxY8bUyvO+8847pKamctFFF5GamsqPP/7I448/TlFRETfffDPAHs/hnQ0bNox///vffPzxx1xyySVlxj7++GMOP/xwmjRpAsAPP/zApZdeSvfu3RkzZgyGYTBt2jQuuOACXnvttQqP6fLEEiyZmZnx20pLSzn33HPZuHEjZ555Jq1atWLu3Ln85z//YfPmzfzzn/+M71tbx/4hhxzCww8/XOa2devWMWHCBLKysuK3TZo0iccee4xhw4Zx6qmnkp+fz3//+1/OOecc3n333fjrePPNN7njjjvo3bs3F1xwAatXr+bKK6+kSZMmtGrVqsrvE0AwGGTDhg00bdq0zO0ffvghxcXFnHHGGRiGweTJk/nHP/7B559/rkpKERGpM0pKiYhIpXz99decfvrpZapCLr300vj24Ycfzssvv0xhYeEuF/RvvPEGS5cu5d///jcnnHACAGeeeSbnnXceEyZM4JRTTiE9PZ0ff/yRadOmcd5553HbbbfF73/xxRdjmmaZx1y6dCnTp0+nffv2APTr148TTzyRjz76iHPPPbfKry8UCnHjjTfyxRdfMGnSpHjCo7LatWtHv3796NKlCyUlJcyYMYNJkyaxYsUKJkyYUOV4FixYwBlnnBH/uWPHjkyaNGmXC8udpaenc9RRR/Hll19SVFREeno6AMuWLWPhwoVcfvnlGIYBwIwZM/B4PPH7nnPOOZx88sm88MILtZKUKi4u5v777+e0007j3nvvjd8+atQojjvuOJ5++ukyt+9s+PDhPP/88xQUFMQTHIFAgM8//5y//e1v8Qvnio7Nqli2bBkZGRnVTgBUJBwO88orr8Rj37p1Kx999BEDBw6MTws855xzWLVqFdOmTau1pNT48ePL/K7POuss7rjjDl5//XWuu+46XC7XHs/hnbVu3ZqDDjqI6dOnl0lKzZ8/n9WrV8fjNk2Tu+66i379+jF58uT4sXfmmWcyYsQIJkyYwPPPP19h/KWlpeTn58d7Sj344IMAHHvssfF9XnjhBVavXs0777zDPvvsE3+e5s2b89xzz3HxxRfHf6+1dey3a9eOdu3axX/2+/2cddZZNG/ePP4ZtnbtWp544gmuvfZarrjiivi+Q4cOZdSoUbz22mtcccUVBINBHn30Ufbff39efvnl+PTbzp07c/vtt1f6mAyFQvHG5Js2beKZZ54hLy9vl8qtdevW8emnn8bPrY4dO/L3v/+db7/9lqOOOqrS74GIiEhNaPqeiIhUSmZmJvPmzavWymPffPMNubm5HH/88fHbnE4n5513HiUlJfzyyy+ANXXKMIxyL8RjF7MxAwYMiCekALp160Z
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4VGXax/HvmZpMGqSQ0EVAehEQBUUUKyLWXcva+7pidxXRRRRf29pl14YVKyrqqgi6YMG1I0XABlIETCAJkDLJ1PP+cZiBSJgUJpmU3+e6uDiZeWbmnskzSc4993M/hmmaJiIiIiIiIiIiIo3IlugARERERERERESk9VFSSkREREREREREGp2SUiIiIiIiIiIi0uiUlBIRERERERERkUanpJSIiIiIiIiIiDQ6JaVERERERERERKTRKSklIiIiIiIiIiKNTkkpERERERERERFpdEpKiYiIiIiIiIhIo1NSSkSkhevVqxe33XbbHt/P+vXr6dWrF0899VQcopKvvvqKXr168dVXXyU6FKmls846i7POOiuu9/nII4/Qq1evuN5nU1fd3J84cSJjxoxp1DgiP9NmzZrVqI8rIiIiOzgSHYCISGv1zjvvUFRUxLnnnpvoUBpVRUUFs2bNYt68efz888+Ul5fTtWtXTjnlFE499VTsdnuV8Y8++ihLlixh6dKlFBUVMWHCBC6//PI6P+769es57LDDqr3u/vvvZ9y4cbu97fjx4yktLeWjjz7CMIxqx5x22mmsW7eOTz/9FIdDv15354cffuCpp57im2++oaioCI/HQ9++fRk/fjwnnHDCLt//lqCiooLp06czfPhw9t9//0SHA1jJsGnTpkW/djgc5ObmMmbMGK644grS09MTGF3T8tVXX3H22WdHv3Y4HOTl5TF06FAuv/xyOnfuXOf7HDNmDD179uTxxx+PZ6giIiLNjv5qFhFJkHfffZdffvml1SWlfvvtN6ZOncqIESM499xzSU1N5bPPPuPWW29lyZIl3H333VXGP/jgg+Tk5NCnTx8+++yzPX78Y489loMPPrjKZYMHD455m/Hjx3Pffffx7bffst9+++1y/fr161m8eDFnnnmmElIxvPbaa9xyyy1kZWVx/PHH07VrV8rLy/nyyy+56aab2Lx5M3/9618THWbcVVRUMG3aNCZMmLBLUurSSy/l4osvTlBkMGXKFDweDxUVFXzxxRfMmDGD5cuX8/LLLzdqHFOnTsU0zUZ9zLo666yzGDBgAMFgkBUrVvDqq6/yySef8J///Ifc3NxEhyciItIs6S9nERFpVNnZ2bzzzjv07Nkzetlpp53GjTfeyKxZs/jb3/5G165do9fNmzePTp06UVxczIgRI/b48fv27cvxxx9fp9uMHz+e+++/n3feeafapNR7772HaZqMHz9+j+NrqRYvXswtt9zC4MGDeeKJJ0hNTY1ed+655/L999/zyy+/JDDCxHA4HAlNZB511FFkZmYC1vvw6quvZvbs2SxdupSBAwc2WhxOp7PRHqu+hg0bxtFHHw3AySefzF577cXtt9/OW2+9xSWXXJLg6ERERJon9ZQSEWkAZWVl/N///R9jxoyhf//+jBgxgvPOO4/ly5cD1ifuH3/8MRs2bKBXr1706tWrSj+VoqIiJk2axMiRIxkwYADHHXccb7755i6PEw6Hee655xg/fjwDBgzggAMO4IILLuD777/fZex///tfjj32WPr378+4ceP49NNP9/h5mqbJP/7xD/r3788HH3xQq9tkZmZWSUhFHHHEEQCsWrWqyuWdOnXa4zj/yOv14vf7az2+ffv27LfffsydO5dAILDL9e+++y5dunRh0KBBbNiwgSlTpnDUUUcxcOBA9t9/f6644grWr19f4+OMGTOGiRMn7nJ5db2M/H4/Dz/8MEcccQT9+/dn9OjR3HPPPTU+r9tuu419992XioqKXa675pprOPDAAwmFQgB8//33XHDBBey///4MHDiQMWPGcOONN9b4PKozbdo0DMPg3nvvrZKQihgwYAAnnXQSsPt+W9X1AJo4cSL77rsvGzdu5JJLLmHfffdl1KhRvPjiiwD89NNPnH322QwePJhDDz2Ud955p8p97q6n06xZs+jVq1fM75vf7+ehhx7ipJNOYujQoQwePJi//OUvfPnll1VijiRTp02bFn2/P/LII9U+/rHHHltt36pwOMyoUaO44oorqlz27LPPMm7cOAYMGMDIkSOZPHky27Zt223MNRk2bBgA69atq3L5kiVLuOCCCxg6dCiDBg3izDPPZOHChVXG7Mnc/2NPqbPOOiv6Wv3x387f/5KSEv7v//6P0aNH079/f4444gieeOIJwuFwlfsvKSlh4sSJDB06lGHDhnHDDTdQWlpa59dnZwcccABA9PlFvpdr165l4sSJDBs2jKFDh3LjjTdW+34TERERVUqJiDSIW265hblz53LmmWfSvXt3tm7dysKFC1m1ahX9+vXjr3/9K6WlpeTn50dP8lNSUgCorKzkrLPOYt26dZxxxhl06tSJOXPmMHHiREpKSjjnnHOij3PTTTcxa9YsDj74YP70pz8RCoX49ttvWbJkCQMGDIiOW7hwIR988AF/+ctfSElJYcaMGVxxxRV89NFHtG3btl7PMRQKMWnSJGbPns20adM45JBD6v+CAYWFhQD1jqe2pk2bxj333INhGPTr14+rr76agw46qMbbjR8/nn/84x989tlnHHroodHLf/rpJ37++Wcuu+wywErkLFq0iHHjxpGXl8eGDRt4+eWXOfvss3nvvfdITk7e4+cQDoe59NJLWbhwIaeccgrdu3fn559/5rnnnmPNmjX8+9//3u1tjznmGF588UU+/vhjxo4dG728oqKCjz76iBNPPBG73U5RUREXXHABbdu25eKLLyY9PZ3169fz4Ycf1jneiooKvvzyS4YNG0aHDh3q9ZxjCYVCXHTRRQwbNozrrruOd955h9tuu43k5GQeeOABxo8fz5FHHskrr7zCDTfcwODBg+vVB+iPysrKeO211zj22GP585//THl5Oa+//joXXnghr732Gn369CEzM5MpU6YwZcoUjjjiiGjydXfNzceOHcu0adPYvHkzOTk50csXLlzIpk2bOOaYY6KXTZ48mTfffJOTTjqJs846i/Xr1/Piiy+yYsUKXn755XpVH0USLDv3lPriiy+46KKL6N+/PxMmTMAwDGbNmsU555zDSy+9FK2oiufc/+tf/8qf/vSnKpf95z//4bPPPiMrKwuw5tWZZ55JQUEBp512Gu3bt2fRokXcf//9bN68mZtuugmwkud/+9vfWLhwIaeddhrdu3fnww8/5IYbbqjz67OzSOKuTZs2VS6/6qqr6NSpE9dccw0rVqzgtddeIzMzk7///e979HgiIiItkZJSIiIN4JNPPuGUU06pUvVy0UUXRY8PPPBAnn/+eUpKSnZZSvbqq6+yatUq/vnPf3LccccB1rKas846iwcffJCTTz6Z1NRUvvzyS2bNmsVZZ53FzTffHL39+eefv0tvllWrVjF79my6dOkCwP7778/xxx/Pe++9x5lnnlnn5xcMBvn73//O/PnzefTRR2uV1InF7/fz3HPP0alTpyrJtHiy2WwcdNBBHH744eTm5vLbb7/x7LPPctFFF/Hoo4/WmFQ76qijmDp1Ku+++26VpNS7774LEF26d8ghh0SX+EQceuihnHrqqcydO5cTTjhhj5/LO++8w+eff86MGTOilS0APXv25JZbbuG7775jyJAh1d526NCh5Obm8v7771dJSn388cd4vd5o0mPRokVs27aNp556qsr35Oqrr65zvGvXriUQCLDPPvvU+ba14fP5OO6446JLqMaPH8+oUaOYNGkS999/f/Q5jRw5krFjx/LWW2/Vq1n+H2VkZDB//nxcLlf0slNOOYWxY8cyY8YM7rjjDjweD0cddRRTpkyhV69eNS4dPeaYY3j44YejSe2I2bNn4/F4ovP022+/5bXXXuPee++tsmx0//3358ILL2TOnDm1Wk4aqaqKJA5feuklMjMzo8tUTdN
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA8olJREFUeJzs3Xd4VGXax/HfmZ4ekkAgdEFQKdJsKKJYEVHRta4dRV2wrWWRdV0sa3tFRXFt2EDXtvbKulZcUVFBLKigdKSEQPr08/5xmIEMCaTBmUm+n+vy8mTOmTP3TJ4Jc+65n/sxTNM0BQAAAAAAAOxiDrsDAAAAAAAAQOtEYgoAAAAAAAC2IDEFAAAAAAAAW5CYAgAAAAAAgC1ITAEAAAAAAMAWJKYAAAAAAABgCxJTAAAAAAAAsAWJKQAAAAAAANiCxBQAAAAAAABsQWIKAIBm9MUXX6h379764osv7A4F9XTWWWfprLPOatZz3n///erdu3eznjPZ1Tb2J06cqBEjRuzSOFauXKnevXvr5Zdf3qWPCwAAGsdldwAAADTFypUrddhhh9W67+6779aoUaPqvO/o0aNVXl6uDz/8UIZh1HrMaaedpuXLl+uTTz6Ry8U/m3VZuHChHnvsMc2dO1cbNmxQenq69tprL40ePVonnHCCnE6n3SE2u+rqak2fPl377ruv9ttvP7vDkWQlxKZNmxb/2eVyqbCwUCNGjNBll12m7OxsG6NLLl988YXOPvvs+M8ul0vt27fX4MGDdemll6pz584NPueIESO0++676+GHH27OUAEAaNH4hA0AaBGOPfZYHXzwwTVuGzBgwHbvM3r0aE2ZMkVfffWV9tlnn232r1y5UvPnz9eZZ55JUmo7XnzxRf39739Xfn6+jj/+eHXt2lWVlZX6/PPP9de//lXr16/XxRdfbHeYza66ulrTpk3ThAkTtklMXXLJJRo3bpxNkUmTJ09Wenq6qqurNWfOHM2cOVM//PCDnn322V0ax8033yzTNHfpYzbUWWedpX79+ikcDuvHH3/U888/r48//livv/66CgsL7Q4PAIAWj0/ZAIBmU1VVpfT0dFsee6+99tLxxx/foPuMHj1ad999t954441aE1NvvfWWTNPU6NGjmyvMFmf+/Pn6+9//rgEDBuiRRx5RZmZmfN+5556r7777TosWLbIxQnu4XC5bk5lHHXWU8vLyJFlVf1deeaXefvttLViwQP37999lcbjd7l32WI01ZMgQHX300ZKkk046Sd26ddMtt9yiV199VRdddJHN0QEA0PLRYwoA0CixHjqLFy/WVVddpX322UdnnHGGJCkcDuuBBx7Q4Ycfrr59+2rEiBG6++67FQwGtznPxx9/rDPPPFMDBw7UoEGDdNJJJ+mNN95oVExVVVW1PkZdOnTooH322UezZs1SKBTaZv+bb76pLl26aO+999aqVas0efJkHXXUUerfv7/2228/XXbZZVq5cuUOH2fEiBGaOHHiNrfX1tsoGAzqvvvu0xFHHKG+fftq+PDhuvPOO3f4vG666SYNHDhQ1dXV2+z785//rAMPPFCRSESS9N1332ns2LHab7/91L9/f40YMULXXXfdDp9HbaZNmybDMHTXXXfVSErF9OvXTyeeeKKkuvtv1dYTaOLEiRo4cKBWr16tiy66SAMHDtSwYcP0zDPPSJJ+/vlnnX322RowYIAOPfTQbcZMXT2eXn75ZfXu3Xu7v7dgMKipU6fqxBNP1ODBgzVgwACdccYZ+vzzz2vEfMABB8Rfg969e6t37966//77a338Y489ttY+VtFoVMOGDdNll11W47Ynn3xSo0aNUr9+/TR06FDdcMMNKi0trTPmHRkyZIgkafny5TVu//bbbzV27FgNHjxYe++9t84880x9/fXXNY5pythP7DF11llnxV+rxP+2/v2XlZXpH//4h4YPH66+ffvqiCOO0COPPKJoNFrj/GVlZZo4caIGDx6sIUOG6C9/+YvKy8sb/Ppsbf/995ek+POL/S6XLVumiRMnasiQIRo8eLCuu+66Wt9vAACgYaiYAgA0yeWXX66uXbvqyiuvjE/Zuf766/XKK6/oqKOO0nnnnacFCxbo4Ycf1q+//qoHHnggft+XX35ZkyZN0u67766LLrpIWVlZWrhwoWbPnt3gKqVp06bpzjvvlGEY6tOnj6688koddNBBO7zf6NGj9be//U2ffvqpDj300PjtP//8s3755ReNHz9ekpXMmTdvnkaNGqX27dtr1apVevbZZ3X22WfrrbfeUlpaWoPirU00GtUll1yir7/+Wqeccop69OihX375RU899ZSWLl2qf/7zn3Xe95hjjtEzzzyjjz76SCNHjozfXl1drQ8//FBjxoyR0+nUhg0bNHbsWLVp00bjxo1Tdna2Vq5cqffee6/B8VZXV+vzzz/XkCFDVFRU1KjnvD2RSEQXXnihhgwZoquvvlpvvPGGbrrpJqWlpemee+7R6NGjdeSRR+q5557TX/7yFw0YMKBRfYESVVRU6MUXX9Sxxx6rk08+WZWVlfr3v/+tCy64QC+++KL23HNP5eXlafLkyZo8ebKOOOIIHXHEEZJUZ8PzkSNHatq0aVq/fr3atm0bv/3rr7/WunXrdMwxx8Rvu+GGG/TKK6/oxBNP1FlnnaWVK1fqmWee0Y8//qhnn322UVVIsSTL1j2m5syZowsvvFB9+/bVhAkTZBiGXn75ZZ1zzjn617/+Fa+sas6xf/HFF+sPf/hDjdtef/11ffrpp8rPz5dkjaszzzxTa9eu1WmnnaYOHTpo3rx5uvvuu7V+/Xr99a9/lSSZpqk//elP+vrrr3XaaaepR48eeu+99/SXv/ylwa/P1mLJu9zc3Bq3X3HFFerUqZP+/Oc/68cff9SLL76ovLw8XXPNNU16PAAAWjsSUwCAJtljjz00ZcqU+M8//fSTXnnlFZ188sm65ZZbJEl//OMflZeXp8cff1yff/659t9/f5WXl+uWW25R//79NXPmTHm93vg5GtKTxuFw6KCDDtLhhx+uwsJCrVixQk8++aQuvPBCPfjggzrkkEO2e/+jjjpKN998s958880aiak333xTkuIJskMOOSQ+3Sfm0EMP1amnnqpZs2bphBNOqHfMdXnjjTf02WefaebMmfEKF0nafffd9fe//13ffPONBg0aVOt9Bw8erMLCQr3zzjs1ElMfffSRqqqq4omPefPmqbS0VI899pj69esXP+7KK69scLzLli1TKBRSr169Gnzf+ggEAjruuOPi06lGjx6tYcOGadKkSbr77rvjz2no0KEaOXKkXn31VV166aVNftycnBx98MEH8ng88dtOOeUUjRw5UjNnztStt96q9PR0HXXUUZo8ebJ69+69w2mkxxxzjO677z7NmjVLZ555Zvz2t99+W+np6fFx+tVXX+nFF1/UXXfdVSM5u99+++mCCy7Qu+++W6+kbay6KpY8/Ne//qW8vLz4lFXTNDV58mTtt99+mj59erz5/2mnnaZRo0bp3nvv1eOPPy6pecf+gQceWOPnb775Rl988YVOOukkDR8+XJL0xBNPaMWKFXrllVfUrVu3eFzt2rXTY489pvPPP18dOnTQ+++/r7lz5+qaa67RBRdcIEk6/fTTazQ0r4/KykqVlJQoHA5r4cKF+sc//iHDMHTkkUfWOG7PPffUrbfeGv9506ZN+ve//01iCgCAJmIqHwCgSU477bQaP3/88ceSpPPOO6/G7eeff36N/f/73/9UWVmpcePG1UhKSapzhbzaFBUV6bHHHtPpp5+uESNG6JxzztErr7yivLw83X777Tu8f05OjoYPH64PPvhAVVVVkqyL9rfeekt9+/ZV9+7dJUk+ny9+n1AopI0bN6pLly7Kzs7Wjz/+WO94t+fdd99Vjx49tNtuu6mkpCT+X2xqUeIUuK0ZhqGjjz5aH3/8sSorK+O3v/POOyosLNTgwYMlSVlZWZKshFVt0xcboqKiQpKUkZHRpPNsz8knnxzfzs7OVvfu3ZWWllYj+bbbbrspOztbK1asaJbHdDqd8aRUNBrVpk2
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA81BJREFUeJzs3Xd8FHX+x/H3bE02BUghVJUiRSmiWEAQRWxgw3r2gqKe2Bv48zwLZzs5G3ZOPWyIZzsUxRMbKtZTQAWkIwIhBUjdPr8/ZnchkEAISSabvJ6PBw8n852d/exm1mQ++Xw/X8M0TVMAAAAAAABAI3PYHQAAAAAAAABaJhJTAAAAAAAAsAWJKQAAAAAAANiCxBQAAAAAAABsQWIKAAAAAAAAtiAxBQAAAAAAAFuQmAIAAAAAAIAtSEwBAAAAAADAFiSmAAAAAAAAYAsSUwAANAPjx4/X8OHD7Q4DtbRmzRr17NlTb775Zr2ed/jw4Ro/fny9nrOpq+7a79mzpx577LFGjeOxxx5Tz549G/U5AQBoDkhMAQCwlSeffFKXX365Bg8evNOb2/z8fF1zzTUaOHCg9t9/f11xxRX6/fffd3j+X375RT179tRDDz1U4zErV65Uz549de+999b5dbQEkUhEb7zxhs477zwddNBB6tOnj4YPH64JEyZowYIFdofXYP73v//pscceU0lJid2hJAwfPlw9e/ZM/Ntvv/102mmn6e2337Y7tCZn/PjxVd6r/fffXyeeeKKee+45BYPBXT7fN998o549e+qDDz5ogGgBAGh4LrsDAACgKXn44YeVm5ur3r1764svvqjxuPLycp1//vkqLS3VZZddJrfbrRdeeEHnnnuu3n77bbVp06bax+27777q2rWr3nvvPV133XXVHvPuu+9Kkk488cTdf0HNlN/v17hx4zRnzhwdeOCBuuyyy9SqVSv98ccfev/99/XWW2/p008/Vbt27ewOtd79+OOPmjx5skaPHq3MzMwqYx988IEMw7Alrt69e+uiiy6SJBUUFOj111/XLbfcomAwqDPOOKNRY5k/f76cTmejPueu8Hg8mjhxoiSptLRUs2bN0v33368FCxbsMGkNAEBzRGIKANAkVVRUyOfzNfrzzp49W506dVJxcbEGDRpU43GvvPKKVq5cqddff139+vWTJA0dOlQnnHCCnn/+eV1//fU1PvaEE07QI488op9++kn77bffduPvvvuuunbtqn333Xe3X09z9cADD2jOnDmaMGGCLrzwwipj48aN0wsvvGBLXHbzeDy2PXdeXp5OOumkxNennHKKjjzySL3wwguNnpjyer2N+ny7yuVyVXmvzj77bJ1++umaOXOmxo8fr7y8PBujAwCgcTGVDwBgu3hvlqVLl+qGG27QgQceqLPPPluSFA6H9fjjj2vEiBGJqVr/+Mc/qp3y8tlnn+ncc8/VgAEDtP/+++vUU0/VjBkzdimWTp061eq4WbNmqW/fvomklCR169ZNgwYN0vvvv7/Dx55wwgmStlRGbe3nn3/WihUrEsd89NFHGjt2rIYMGaI+ffpoxIgRevzxxxWJRHb4HPHpPd98802V/TX1Nlq2bJmuvvpqHXTQQerbt69OOeUUzZ49e4fPEQqFdNBBB2nChAnbjZWVlalv3766//77E/tefPFFjRo1Sv3799eBBx6oU045ZZe/P5K0fv16vfbaazr00EO3S0pJktPp1JgxYxLVUjX136quJ1DPnj1111136f3339fIkSPVr18/nXnmmVq8eLEkadq0aTrqqKPUt29fnXfeeVqzZk2Vx9fU4+m8887Teeedt8PXtWjRIo0fP15HHnmk+vbtq0MPPVQTJkzQxo0bq8T8wAMPSJKOPPLIxHSweBxbP/+CBQvUs2dPvfXWW9s915w5c9SzZ0998skniX35+fmaMGGCBg8erD59+mjUqFH697//vcOYdyQrK0tdu3bV6tWrq+yPRqN64YUXNGrUKPXt21eDBw/W7bffrs2bN1c5rq7XvlS1x1T8mq/p39bmzZunMWPG6IADDlD//v117rnn6ocfftju/N9//71OPfVU9e3bVyNGjNC0adN29e2pwuFw6KCDDpIk/fHHH5Ks7+Vll12m77//Xqeddpr69u2rI488kumRAIBmh4opAECTcc0112jPPffUddddJ9M0JUm33Xab3nrrLR1zzDG66KKLNH/+fD399NNatmyZHn/88cRj33zzTd16663ae++9ddlllykjI0MLFy7UnDlzEkme+hKNRrV48WKdeuqp24317dtXX3zxhcrKypSenl7t4zt37qwBAwbo/fff14QJE6pMOYonq+Ixv/XWW/L5fLrooovk8/n09ddf69FHH1VZWZluueWWenk9S5Ys0VlnnaW8vDxdeuml8vl8ev/993XllVfqscce01FHHVXt49xut0aMGKH//ve/uvPOO6tU63z00UcKBoMaOXKkJGn69OmaOHGijjnmGJ1//vkKBAJavHix5s2bt8vfn88//1zhcLjBpjp+//33+vjjjxPJ0WeeeUaXX365LrnkEr3yyis6++yztXnzZk2ZMkW33nqrpk6dWi/P+9VXX+n333/XKaecotzcXC1ZskTTp0/X0qVLNX36dBmGoaOOOkorV67Uu+++qwkTJiSmjGZlZW13vr59+6pz5856//33NXr06CpjM2fOVKtWrTRkyBBJUmFhoc444wwZhqFzzjlHWVlZ+vzzz/V///d/KisrqzYBuDPhcFj5+flq1apVlf2333673nrrLZ1yyimJ5N7LL7+sX3/9Va+++qrcbrek+rv2s7KyEsm8rWO79957E88lSXPnztWll16qPn36aNy4cTIMQ2+++aYuuOACvfLKK4kk9OLFizVmzBhlZWXpqquuUjgc1mOPPabs7Oxdfo+2Fu9P17p168S+VatW6ZprrtFpp52m0aNH64033tD48eO17777au+9996t5wMAoKkgMQUAaDJ69eqlSZMmJb5etGiR3nrrLZ1++umJfizxm+bnnntOX3/9tQ455BCVlpZq4sSJ6tevn1588cUq03jiCa76tGnTJgWDQeXm5m43Ft+3YcOGGhNTkpV4uuuuuzR37txEciAajWrmzJkaMGCAOnfuLEmaNGmSUlJSEo8766yzdPvtt+vVV1/VddddVy9Tt/72t7+pffv2euONNxLnO/vss3XWWWfpwQcfrDExJUkjR47UG2+8oS+//FJHHHFEYv/MmTPVuXNn9e3bV5L06aefau+999ajjz662/EuW7ZMkhpsBbQVK1bo/fffT1TPtWrVSrfffruefPJJffDBB4nvazQa1dNPP601a9bUutJuR84++2xdfPHFVfbtt99+uv766/XDDz9o4MCB6tWrl/bZZx+9++67GjFixE6fd+TIkXruuee0efPmRIIoGAzqo48+0lFHHZVIzDz00EOKRCKaMWNGItl11lln6frrr9fkyZP1pz/9qcp1WJ1wOKzi4mJJVqJrypQpKigo0DnnnJM45vvvv9frr7+uBx98sEpC8uCDD9Yll1yiDz74ILG/vq59n89XZdqcJN15552qqKjQc889J8n6/8Qdd9yhgw8+WFOmTEn06frTn/6kUaNG6eGHH04c++ijj8o0Tb388svq0KGDJOmYY47Z5QRr/L0qKyvT+++/r48++kg9e/ZU165dE8esWLFCL7/8sgYOHChJOu644zRs2DC9+eab9ZaYBgDAbkzlAwA0GX/605+qfP3ZZ59JUqKhclz85j0+/uWXX6q8vFxjx47drrdMQzSCDgQCkqrv5xN//vgxNRk5cqTcbneV6Xzffvut8vPzq9zgbn1jXlZWpuLiYg0cOFCVlZVavnz5br0OyUqyff311zruuOMS5y8uLtbGjRs1ZMgQrVy5Uvn5+TU+/pBDDlGbNm00c+bMxL7Nmzfrq6++SlRLSVJmZqbWr1+v+fPn73bMZWVlkqS0tLTdPld1Bg0aVCXh079/f0nS0UcfXSXZGK+g2dlKjLW19fc6EAiouLg48dy//PJLnc45cuRIhUIhffjhh4l9X375pUp
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA8iBJREFUeJzs3Xd8FHX+x/H3bE+HFDoiRYrS7QqiiA1seHbFBqKeqGcHz/NsP9vJ2VBROfXwVNSzHYpiV1TsCqiAdAQpCYH07fP7Y8hCIIEENpndzev5ePBwsvPNzGc3302cz36+nzFM0zQFAAAAAAAANCGH3QEAAAAAAACg+SEpBQAAAAAAgCZHUgoAAAAAAABNjqQUAAAAAAAAmhxJKQAAAAAAADQ5klIAAAAAAABociSlAAAAAAAA0ORISgEAAAAAAKDJkZQCAAAAAABAkyMpBQBAHIwfP15Dhw61OwzU06pVq9SjRw+99tprcT3u0KFDNX78+LgeM9HVNvd79OihRx55pEnjeOSRR9SjR48mPScAANg9JKUAAAnl8ccf16WXXqpDDjlkhxe21Reg2/7r06fPDo//yy+/qEePHnrggQfqHLN8+XL16NFDd9999249l1QXiUT06quvatSoUTrggAPUu3dvDR06VBMmTNC8efPsDq/R/PDDD3rkkUdUWlpqdygxQ4cOrfE+6N+/v0499VS98cYbdoeWcMaPH1/jtRo4cKBOPPFEPf300woGgw0+3tdff60ePXro3XffbYRoAQBIbS67AwAAYGsPPvigCgoK1KtXL33++ec7HX/rrbcqPT099rXT6dzh+H322UddunTR22+/rauvvrrWMW+99ZYk6cQTT2xA5M2L3+/XuHHjNGvWLO2///665JJLlJOTo9WrV+udd97R66+/rk8++URt2rSxO9S4+/HHHzVp0iSNHDlS2dnZNfa9++67MgzDlrh69eqlCy+8UJJUWFioV155RTfeeKOCwaBOP/30Jo1l7ty5O30v2snj8ejOO++UJJWVlWnmzJm69957NW/evB0mrAEAQHyRlAIA1KqysrJGsqepfPjhh+rQoYOKi4t18MEH73T8Mccco9zc3Aad44QTTtBDDz2kn376Sf37999u/1tvvaUuXbpon332adBxm5P77rtPs2bN0oQJE3TBBRfU2Ddu3Dg9++yztsRlN4/HY9u5W7durZNOOin29SmnnKIjjzxSzz77bJMnpbxeb5Oer6FcLleN1+rss8/WaaedphkzZmj8+PFq3bq1jdEBANB8sHwPABBbCrd48WJde+212n///XX22WdLksLhsB599FENGzYstjzrn//8Z63LXD799FOde+65GjBggAYOHKg//elPmj59eoNi6dChQ4PjLy8vl2ma9R5/wgknSNpSEbW1n3/+WcuWLYuN+eCDDzR27FgNGjRIvXv31rBhw/Too48qEons8BzVS3q+/vrrGo/X1ctoyZIluvLKK3XAAQeoT58+OuWUU/Thhx/u8ByhUEgHHHCAJkyYsN2+8vJy9enTR/fee2/sseeee04jRoxQv379tP/+++uUU05p8M9HktauXauXXnpJhx566HYJKcmqVhs9enSsSqquflu19QDq0aOHbr/9dr3zzjsaPny4+vbtqzPOOEMLFy6UJE2bNk1HHXWU+vTpo1GjRmnVqlU1vr+unk6jRo3SqFGjdvi8FixYoPHjx+vII49Unz59dOihh2rChAnauHFjjZjvu+8+SdKRRx4ZWwJWHcfW5583b5569Oih119/fbtzzZo1Sz169NDHH38ce2zdunWaMGGCDjnkEPXu3VsjRozQf//73x3GvCO5ubnq0qWLVq5cWePxaDSqZ599ViNGjFCfPn10yCGH6JZbblFJSUmNcbs696WaPaWq53xd/7Y2Z84cjR49Wvvuu6/69eunc889V99///12x//uu+/0pz/9SX369NGwYcM0bdq0hr48NTgcDh1wwAGSpNWrV0uyfpaXXHKJvvvuO5166qnq06ePjjzySJZEAgAQR1RKAQBirrrqKnXq1ElXX311LMlz88036/XXX9cxxxyjCy+8UHPnztUTTzyhJUuW6NFHH41972uvvaabbrpJe+21ly655BJlZWVp/vz5mjVrVizB0xiOPPLIWFXXkUceqfHjxys/P3+H39OxY0cNGDBA77zzjiZMmFBjmVF1oqo65tdff13p6em68MILlZ6erq+++koPP/ywysvLdeONN8blOSxatEhnnXWWWrdurYsvvljp6el65513dPnll+uRRx7RUUcdVev3ud1uDRs2TO+//75uu+22GlU6H3zwgYLBoIYPHy5Jevnll3XnnXfqmGOO0XnnnadAIKCFCxdqzpw5Df75fPbZZwqHw422vPG7777TRx99FEuMPvnkk7r00ks1ZswYvfDCCzr77LNVUlKiKVOm6KabbtLUqVPjct4vv/xSv//+u0455RQVFBRo0aJFevnll7V48WK9/PLLMgxDRx11lJYvX6633npLEyZMUMuWLSWp1mq9Pn36qGPHjnrnnXc0cuTIGvtmzJihnJwcDRo0SJJUVFSk008/XYZh6JxzzlFubq4+++wz/fWvf1V5eXmtyb+dCYfDWrdunXJycmo8fsstt+j111/XKaecEkvsPf/88/r111/14osvyu12S4rf3M/NzY0l8raO7e67746dS5Jmz56tiy++WL1799a4ceNkGIZee+01nX/++XrhhRfUt29fSdLChQs1evRo5ebm6oorrlA4HNYjjzyivLy8Br9GW/v9998lSS1atIg9tmLFCl111VU69dRTNXLkSL366qsaP3689tlnH+211167dT4AAEBSCgCwlZ49e2rixImxrxcsWKDXX39dp512Wqz/SvUF89NPP62vvvpKBx10kMrKynTnnXeqb9++eu6552os3WlIBVNDZGdn69xzz1X//v3l8Xj03Xff6YUXXtC8efP06quvKjMzc4fff8IJJ+j222/X7NmzY4mBaDSqGTNmaMCAAerYsaMkaeLEifL5fLHvO+uss3TLLbfoxRdf1NVXXx2X5Vr/93//p7Zt2+rVV1+NHe/ss8/WWWedpfvvv7/OpJQkDR8+XK+++qq++OILHXHEEbHHZ8yYoY4dO8Yav3/yySfaa6+99PDDD+92vEuWLJGkRrvT2bJly/TOO+/EquZycnJ0yy236PHHH9e7774b+9lGo1E98cQTWrVq1S5V2G3r7LPP1kUXXVTjsf79++uaa67R999/r/322089e/bU3nvvrbfeekvDhg3b6XmHDx+up59+WiUlJbHkUDAY1AcffKCjjjoqlpR54IEHFIlENH369Fii66yzztI111yjSZMm6cwzz6wxD2sTDodVXFwsyUpyTZkyRYWFhTrnnHNiY7777ju98soruv/++2skIw888ECNGTNG7777buzxeM399PT0GkvlJOm2225TZWWlnn76aUnW74lbb71VBx54oKZMmRLry3XmmWdqxIgRevDBB2NjH374YZmmqeeff17t2rWTZC3jbWhytfq1Ki8v1zvvvKMPPvhAPXr0UJcuXWJjli1bpueff1777befJOm4447TkCFD9Nprr8UtKQ0AQHPG8j0AQMyZZ55Z4+tPP/1UkmLNk6tVX7hX7//iiy9UUVGhsWPHbtdLprGaPp9//vn629/+phNOOEHHHHOM/vrXv+qee+7R8uXL9cILL+z0+4cPHy63211jCd8333yjdevW1bi43fqivLy8XMXFxdpvv/1UVVWlpUuX7vbz2LRpk7766isdd9xxseMXFxdr48aNGjRokJYvX65169bV+f0HHXSQWrZsqRkzZsQeKykp0ZdffhmrkpKsJN7atWs1d+7c3Y65vLxckpSRkbHbx6rNwQcfXCPZ069fP0nS0UcfXSPZWF05U13hsru2/lkHAgEVFxfHzv3LL7/s0jGHDx+uUCik9957L/bYF198odLS0tjPxzRNvffeexo6dKhM04zNgeLiYg0aNEhlZWX1Ov/nn3+ugw8+WAcffLBOOOEEvfnmmzrllFN0ww03xMa8++6
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA+tVJREFUeJzs3Xd8VHX2//H3nZ5JIwVCR4qA0gSxgyh2sKy9rB1XV8XuKriu6yq/dfUrVmwrq666Flzb4qLYFRXrqiiC0hEkISGkZ/r9/XGZgUiAJJPkZpjX8/Hw4WXunTsnczOEe3LO+RimaZoCAAAAAAAA2pnD7gAAAAAAAACQnkhMAQAAAAAAwBYkpgAAAAAAAGALElMAAAAAAACwBYkpAAAAAAAA2ILEFAAAAAAAAGxBYgoAAAAAAAC2IDEFAAAAAAAAW5CYAgAAAAAAgC1ITAEA0IFMmTJF48ePtzsMNNGaNWs0aNAgvfTSS6163vHjx2vKlCmtes6OrrHv/UGDBun+++9v1zjuv/9+DRo0qF1fEwCAdEZiCgCw01m2bJnuuOMOHXfccRo5cqTGjBmjCy+8UN99912jx5eUlOiKK67Q6NGjNWrUKF188cX6+eeft/saCxcu1KBBg3T33Xdv85iVK1dq0KBBuu2225L6enZ20WhUL774os466yztvffeGjp0qMaPH6+pU6du85rtDP73v//p/vvvV1VVld2hJIwfP16DBg1K/LfHHnvopJNO0iuvvGJ3aB3OlClTGrxXo0aN0rHHHqvHHntMoVCo2ef77LPPNGjQIL3xxhttEC0AAB2Xy+4AAABobf/+97/173//W4cffrjOOOMMVVdX6/nnn9epp56qmTNnav/9908cW1tbq7PPPlvV1dW66KKL5Ha79cQTT+jMM8/UK6+8ory8vEZfY8iQIerXr5/++9//6qqrrmr0mNdee02SdOyxx7b+F7mTCAQCmjx5subNm6e99tpLF110kXJzc7V27Vq9/vrrevnll/X++++ra9eudofa6r7++mvNmDFDxx9/vHJychrse+ONN2QYhi1x7bbbbjrvvPMkSaWlpXrhhRd0/fXXKxQK6ZRTTmnXWBYsWCCn09mur9kcHo9H06ZNkyRVV1dr7ty5uv322/Xdd99tN2kNAAA2IzEFAGhTdXV18vv97fqaEydO1OTJk5WZmZl47MQTT9SECRN0//33N0hMPfPMM1q5cqVeeOEFDR8+XJI0duxYHXPMMXr88cd19dVXb/N1jjnmGN1777365ptvtMcee2y1/7XXXlO/fv00ZMiQ1vvidjJ33HGH5s2bp6lTp+rcc89tsG/y5Ml64oknbInLbh6Px7bXLioq0nHHHZf48wknnKBDDjlETzzxRLsnprxeb7u+XnO5XK4G79UZZ5yhk08+WXPmzNGUKVNUVFRkY3QAAKQGWvkAAK0mPptl6dKluuaaa7TXXnvpjDPOkCRFIhE98MADOvTQQxOtWnfddVejLS8ffPCBzjzzTI0cOVKjRo3SiSeeqNmzZzc5jqFDhzZISklSXl6eRo8ereXLlzd4fO7cuRo2bFgiKSVJ/fv313777afXX399u69zzDHHSNpcGbWl77//XitWrEgc8/bbb+vCCy/UmDFjNHToUB166KF64IEHFI1Gt/sa8faezz77rMHj25pttGzZMl1++eXae++9NWzYMJ1wwgl65513tvsa4XBYe++9t6ZOnbrVvpqaGg0bNky333574rGnnnpKEydO1IgRI7TXXnvphBNOaNb1iSsuLtbzzz+vAw44YKuklCQ5nU5NmjQpUS21rflbjc0EGjRokG655Ra9/vrrmjBhgoYPH65TTz1VP/74oyTpueee02GHHaZhw4bprLPO0po1axo8f1szns466yydddZZ2/26Fi9erClTpuiQQw7RsGHDdMABB2jq1KnauHFjg5jvuOMOSdIhhxySaAeLx7Hl63/33XcaNGiQXn755a1ea968eRo0aJDee++9xGMlJSWaOnWq9t9/fw0dOlQTJ07Uv//97+3GvD35+fnq16+fVq9e3eDxWCymJ554QhMnTtSwYcO0//7766abblJlZWWD41r6vS81nDEV/57f1n9b+vbbbzVp0iTtueeeGjFihM4880x99dVXW53/yy+/1Iknnqhhw4bp0EMP1XPPPdfct6cBh8OhvffeW5K0du1aSda1vOiii/Tll1/qpJNO0rBhw3TIIYfQHgkAwCZUTAEAWt0VV1yhPn366KqrrpJpmpKkG2+8US+//LKOOOIInXfeeVqwYIEeeeQRLVu2TA888EDiuS+99JJuuOEG7brrrrrooouUnZ2tRYsWad68eYkkT0uVlpaqU6dOiT/HYjH9+OOPOvHEE7c6dtiwYfroo49UU1OjrKysRs/Xq1cvjRw5Uq+//rqmTp3aoOUonqyKx/zyyy/L7/frvPPOk9/v16effqr77rtPNTU1uv7665P6uuKWLFmi008/XUVFRfrd734nv9+v119/XZdeeqnuv/9+HXbYYY0+z+1269BDD9Vbb72lv/zlLw2qdd5++22FQiFNmDBBkjRr1ixNmzZNRxxxhM4++2wFg0H9+OOP+vbbb5t9fT788ENFIpE2a3X88ssv9e677yaSo3//+9/1+9//XhdccIGeeeYZnXHGGaqsrNTMmTN1ww036Mknn2yV1/3kk0/0888/64QTTlDnzp21ZMkSzZo1S0uXLtWsWbNkGIYOO+wwrVy5Uq+99pqmTp2aaBnNz8/f6nzDhg1Tr1699Prrr+v4449vsG/OnDnKzc3VmDFjJEllZWU65ZRTZBiGfvvb3yo/P18ffvih/vjHP6qmpqbRBOCORCIRlZSUKDc3t8HjN910k15++WWdcMIJieTev/71L/3www969tln5Xa7JbXe935+fn4imbdlbLfddlvitSRp/vz5+t3vfqehQ4dq8uTJMgxDL730ks455xw988wziST0jz/+qEmTJik/P1+XXXaZIpGI7r//fhUUFDT7PdpSfD7dln/XrFq1SldccYVOOukkHX/88XrxxRc1ZcoUDRkyRLvuumtSrwcAQKojMQUAaHWDBw/W9OnTE39evHixXn75ZZ188smJeSzxm+bHHntMn376qfbdd19VV1dr2rRpGj58uJ566qkGbTzxBFdLffnll/rmm2908cUXJx6rqKhQKBRS586dtzo+/tj69eu3mZiSrMTTLbfcovnz5yeSA7FYTHPmzNHIkSPVq1cvSdL06dPl8/kSzzv99NN100036dlnn9VVV13VKq1b/+///T9169ZNL774YuJ8Z5xxhk4//XTdeeed20xMSdKECRP04osv6uOPP9bBBx+ceHzOnDnq1auXhg0bJkl6//33teuuu+q+++5LOt5ly5ZJUputgLZixQq9/vrr6tmzpyQpNzdXN910kx566CG98cYbiesai8X0yCOPaM2aNYljk3HGGWfo/PPPb/DYHnvsoauvvlpfffWVRo8ercGDB2v33XfXa6+9pkMPPXSHrzthwgQ99thjqqysTCSIQqGQ3n77bR122GGJxMzdd9+taDSq2bNnJ5Jdp59+uq6++mrNmDFDp512WoPvw8ZEIhGVl5dLshJdM2fOVGlpqX77298mjvnyyy/1wgsv6M4772yQkNxnn310wQUX6I033kg83lrf+36/v0HbnCT95S9/UV1dnR577DFJ1t8TN998s/bZZx/NnDkzMafrtNNO08SJE3XPPfckjr3vvvtkmqb+9a9/qXv37pKkI444otkJ1vh7VVNTo9dff11vv/22Bg0apH79+iWOWbFihf71r39p9OjRkqSjjjpK48aN00svvdRqiWkAAFIVrXwAgFZ32mmnNfjzBx98IEmJgcpx8Zv3+P6PP/5YtbW1uvDCC7eaLZPMIOgNGzbommuuUc+ePXXBBRckHg8Gg5Ian+cTf/34MdsyYcIEud3uBu18n3/+uUpKShrc4G55Y15TU6Py8nKNHj1a9fX1W7UXtkRFRYU+/fRTHXXUUYnzl5eXa+PGjRozZoxWrlypkpKSbT5/3333VV5enub
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKEAAAK1CAYAAAAQUP2QAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4VGXax/HfmZ4OIaF3EFCpgihIcRERRF1x17JWBMWGDRERFQusq742FAuKDXVBcO1ixYaKBRdhVVBAioBACpA2fc77x5AhgQAJmclMku/nunJ5cuaZM/fEZ8LMnfu5H8M0TVMAAAAAAABADFniHQAAAAAAAADqPpJQAAAAAAAAiDmSUAAAAAAAAIg5klAAAAAAAACIOZJQAAAAAAAAiDmSUAAAAAAAAIg5klAAAAAAAACIOZJQAAAAAAAAiDmSUAAAAAAAAIg5klAAAMRJ586d9eijj8Y7DFTSo48+qs6dO0f1mt9++606d+6sb7/9NqrXTXR7z/3XXntNnTt31qZNm2o0jiFDhmjy5Mk1+pgAANRnJKEAAAnn5Zdf1muvvRb16w4ZMkSdO3fe52vq1KkHvN/06dPVuXNnbdiwYb9jHnroIXXu3FmrVq2Kdth1Sm5uru69914NHz5cPXr0UM+ePXXGGWfo8ccfV0FBQbzDi5lYzelDVZr8Kv06/PDD1a9fP11zzTVau3ZtvMNLOGV/Vl26dNGAAQM0ZsyYQ04eTp48Wb169YpylAAAJD5bvAMAAGBvc+fOVcOGDXXGGWdE/dqHH364Lr744nLn2rVrd8D7nHrqqXrxxRf19ttva/z48RWOeeedd9SpUyd16dIlarHWNStWrNC4ceNUUlKi0047TUceeaQk6aefftLTTz+tpUuX6tlnn41zlLGxvzl99NFHa8WKFbLb7XGJ64ILLlC3bt0UCAT066+/at68efr222/1zjvvKDs7u8bi+Otf/6qRI0fK4XDU2GNW1XHHHae//vWvMk1TmzZt0ty5c3XRRRdp1qxZGjx4cLzDAwCgViAJBQCo1UpKSpScnFzp8U2aNNFf//rXKj1Gjx491KZNG7377rsVJqGWLVumTZs26YYbbqjSdeuTgoICjR8/XlarVa+//ro6dOhQ7vbrr79e8+fPj1N08WOxWOR0OuP2+H369NHw4cMj37dr10533HGH3njjDV166aU1FofVapXVaq2xxzsUbdu2Lfe748QTT9Rpp52mOXPmkIQCAKCSWI4HAKiW0j45GzZs0OTJk9WnTx/17t1bN998s9xud7mx//nPf3ThhReqX79+6tq1q04++WT9+9//LjdmyJAhWr16tb777rvI8pcLLrhA0p6+Md99953uuOMO9evX75A+/Pl8PpWUlFTpPqeeeqp+//13/fzzz/vc9s4778gwDJ1yyiny+XyaMWOGzjjjDPXu3Vs9e/bUueeeq2+++eagjzF58mQNGTJkn/P760X05ptv6owzzlD37t3Vt29fXX/99frzzz8P+Bjvv/9+5Ge4t3nz5qlz58767bffJEk5OTm6+eabNWjQIHXt2lUDBgzQFVdccUh9e+bNm6dt27Zp8uTJ+ySgJCkrK0tXXnll5Pv99cvau4dP6ZxYunSppk+frmOPPVZ9+vTR1KlT5fP5VFBQoEmTJunoo4/W0Ucfrfvuu0+maUbuv7+eTJs2bVLnzp0PuoSuunN678e/66671KtXr31eO5I0YcIEHXfccQoGg5Fzn3/+uc4991z17NlTvXr10rhx47R69eoDxnwgffr0kST98ccf5c5v27ZNN998s/r376+uXbtq5MiRevXVV8uNqc7c37snVOmcr+ir7P//UCik559/XiNHjlS3bt3Uv39/TZ06Vbt27Sp3fdM09fjjj2vQoEHq0aOHLrjggmr9nKTwHG3YsGEk5tL/lwsXLtQTTzyhQYMGqVu3brrooosOuJQXAID6hEooAEBUXHfddWrZsqUmTJigX375RQsWLFBmZqZuvPHGyJi5c+fqsMMO05AhQ2Sz2fTpp5/qzjvvlGmaOu+88yRJU6ZM0bRp05ScnKzLL79cUjhBUdadd96pzMxMXXXVVVVOJn3zzTfq2bOngsGgWrRooYsuukgXXXTRQe936qmnaubMmXrnnXciy8gkKRgM6r333lOfPn3UvHlz5efna8GCBTrllFN05plnqri4WK+++qouueQSLViwQIcffniV4t2fJ554QjNmzNCIESP097//Xfn5+XrppZd03nnn6Y033lB6enqF9zv++OOVnJys9957T3379i1328KFC3XYYYepU6dOkqSrr75aa9as0fnnn68WLVooPz9fX331lf7880+1bNmySvF+8skncrlcOumkkw7tCR/E9OnTlZWVpauvvlrLly/XK6+8orS0NC1btkzNmjXT9ddfry+++ELPPPOMOnXqpNNPPz0qjxutOV3q5JNP1ssvv6zPPvtMI0aMiJx3u9369NNPNWrUqEjF0BtvvKHJkydrwIABmjhxotxut+bOnatzzz1Xr7/+epX/H0nS5s2bJanc/MnNzdVZZ50lwzB03nnnKTMzU1988YVuueUWFRUVafTo0ZKkoqKiqM39E088Ua1bty537ueff9YLL7ygzMzMyLmpU6fq9ddf1xlnnKELLrhAmzZt0ssvv6xffvlFc+fOjSxznDFjhp544gkNHjxYgwcP1s8//6wxY8bI7/dX+WdUateuXSooKFCbNm3KnX/66adlGIbGjBmjoqIizZ49WxMnTtSCBQsO+bEAAKgrSEIBAKLi8MMP19133x35fufOnXr11VfLJaFeeukluVyuyPfnn3++xo4dq+eeey7ygX3o0KF6+OGH1bBhw/0um8vIyNDzzz9f5eU7nTp1Uu/evdWuXTvt3LlTr7/+uu6++25t3769XJwVadu2rbp166aFCxfqxhtvlMUSLib++uuvlZeXp2uvvTYS2yeffFKut81ZZ52lESNG6MUXXyz3MzpUmzdv1qOPPqrrrrsuktSQpGHDhmnUqFH697//Xe58WS6XS0OGDNEHH3ygW2+9NfIzzMnJ0ffffx9ZblhQUKBly5Zp0qRJGjt2bOT+l1122SHF/Pvvv6tt27Yx6/nTqFGjyIf/8847Txs3btQzzzyjs88+W3feeack6eyzz9aQIUP0n//8J2pJqGjN6VK9e/dWkyZN9N5775VLQn322WcqKSnRySefLEkqLi7WP//5T5155pmaNm1aZNyoUaM0fPhwzZo1q9z5/SkuLlZ+fn6kJ9Tdd98twzA0bNiwyJiHHnpIwWBQb7/9tho2bChJ+sc//qEJEyZo5syZOuecc+RyuaI697t06VKuv1p+fr4efvhhderUKTJHly5dqgULFuj+++/XqaeeGhl7zDHH6JJLLtH777+vU089Vfn5+Zo9e7aOP/54PfnkkzIMI/K8nnzyyUrH5PV6lZ+fLylcKffggw8qGAyWW85YOu6NN96I/BzS09P1z3/+U7/99lskwQsAQH3FcjwAQFScc8455b7v06ePdu7cqaKiosi5sh/WCwsLlZ+fr759++qPP/5QYWFhpR/rrLPOOqT+MU8++aQuvfRSDR06VH//+9/10ksvacCAAXr++ee1devWg97/tNNO09atW/X9999Hzr3zzjuy2+2RD6JWqzXy4TMUCmnnzp0KBALq2rWrfvnllyrHXJGPPvpIoVBII0aMUH5+fuQrKytLbdq0OeiOXSNGjFBeXl65JXkffPCBQqFQJMnhcrlkt9v13Xff7bO06VAUFRUpJSWl2tfZn7///e+R5IIkde/eXaZp6u9//3vknNVqVdeuXfdZalYd0ZrTpQzD0PDhw/X555+ruLg4cv69995TkyZN1Lt3b0nh5GdBQYFGjhxZbg5YLBb16NGj0ru2TZkyRf369dPAgQN1ySWXqLCwUPfdd5+6d+8uKbyM7cMPP9SQIUNkmma5xxowYIAKCwsjS1RjNfeDwaBuuOEGFRcX67HHHov0gHv//feVlpam4447rlxcRx55pJKTkyM/g6+//lp+v1/nn39+uTlSmQrIsl599VX169d
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4VGXax/HfmZoeSAKhqnQLXSygiCKigLqLhbU3XCuiYgN0bbiu+oqrCCrK2ncV7KsiFmysolhAFEEQKdICSUjP9PP+MclATEISyORkMt/PdXFxMueZM/fkZCY599zP/RimaZoCAAAAAAAAmpDN6gAAAAAAAAAQf0hKAQAAAAAAoMmRlAIAAAAAAECTIykFAAAAAACAJkdSCgAAAAAAAE2OpBQAAAAAAACaHEkpAAAAAAAANDmSUgAAAAAAAGhyJKUAAAAAAADQ5EhKAQCAKl5//XX16tVLmzZtsjoU1NPw4cM1efLkRj3m5MmTNXz48EY9ZnNX08/++eefr/PPP79J4/j666/Vq1cvff311036uAAANDWSUgCAuPfvf/9br7/+eqMfd/78+brxxhs1cuRI9erVq94Xto8//rh69eqlk08+eY/j/H6/jjjiCJ199tm1jjFNU8OGDdPYsWMbFHs8+vrrrzVhwgQdddRR6t27twYPHqwrrrhCH3zwgdWhRU1OTo4effRRrVy50upQIiZPnqxevXpF/vXu3VsnnniiHnnkEXm9XqvDa1Yqk2iV//r06aMTTzxRd999t3Jzc/fqmL169dLdd9/dyJECAFAzh9UBAABgtZdeekmtW7fWaaed1ujH/emnn9SnTx8VFBTU6z7btm3T7NmzlZSUVOdYp9Opk046SXPnztXmzZvVsWPHamO++eYbbdu2TRdddFEDo48vM2bM0KxZs3TAAQfoL3/5izp06KCCggJ99tlnuuaaa/Tggw/qlFNOsTrMRrd9+3bNnDlTHTt21EEHHVRl37Rp02SapiVxuVwu3XPPPZKkkpISLVy4UI899pg2btyo6dOnN2ks//rXv5r08fbGxIkT1alTJ/l8Pn333Xd66aWX9Nlnn+mdd95RYmKi1eEBAFArklIAADRAWVlZvRJGkvTAAw8oOztbNputzqqnSvfff7/69eunUCiknTt31jn+lFNO0csvv6x3331Xl112WbX977zzjmw2m0aPHl2vx49HCxYs0KxZs3TiiSdq+vTpcjqdkX2XXnqpFi1apEAgYGGE1tj9+9DUHA6H/vSnP0W+Puecc3TWWWfp3Xff1ZQpU5SVldVksbhcriZ7rL11zDHHqE+fPpKkM888U61atdIzzzyjhQsX1vu9BwAAKzB9DwAQUx599FH16tVLGzZs0OTJkzVo0CAdeuihmjJlisrLy6uMfe2113TBBRdo8ODB6t27t0aPHq3//Oc/VcYMHz5ca9as0ZIlSyJTYCqn2VVOjVmyZInuvPNODR48WMOGDat3rO3bt5fNVv9ftd98843ef/99TZ06td73OfTQQ9WxY0e9/fbb1fb5/X69//77OuKII5Sdna1Vq1Zp8uTJOv7449WnTx8dddRRmjJlSr2SX7169dKjjz5a7faaehkVFRXp73//u4YNG6bevXvrhBNO0JNPPqlQKLTHx7j88st1/PHH17jvL3/5S5VKti+++EJnn322Bg0apAEDBujEE0/UQw89VOfzqMkjjzyiVq1a6d57760xETN06FAdd9xxkmrvt1VTD6Dzzz9fJ598slatWqXzzjtP/fr10wknnKAFCxZIkpYsWaIzzzxTffv21Yknnqgvv/yyyjFr6+lU+RrYk4KCAt1///065ZRTNGDAAA0cOFCXXnqpVq1aVSXmM844Q5I0ZcqUyM9/5VTW3R/f7/fr8MMP15QpU6o9VklJifr06aP7778/cpvP59OMGTN0wgknqHfv3ho2bJgeeOAB+Xy+PcZdG8MwNHDgQJmmqd9//73Kvs8++0znnHOO+vfvrwEDBuiyyy7TmjVrqozZl5/9P/aUGj58eJUpc7v/2/385+TkaMqUKRoyZIh69+6tMWPG6NVXX612/G3btumqq65S//79NXjwYN177717/X2qdOSRR0pS5Od08uTJGjBggHJycnTVVVdpwIABOvLII3X//fcrGAzu02MBALAvqJQCAMSk6667Tp06ddKkSZP0888/65VXXlFGRoZuuummyJiXXnpJPXr00PDhw+VwOPTJJ5/orrvukmmaOvfccyVJU6dO1bRp05SUlKQrrrhCkqpVYdx1113KyMjQ1VdfrbKysqg8n2AwqGnTpumMM86oM+GwO8MwdMopp+iJJ57QmjVr1KNHj8i+RYsWqaCgIDLt7Msvv9Tvv/+u0047TW3atNGaNWs0b948/frrr5o3b54Mw9jn51FeXq7zzjtPOTk5Ouuss9S+fXstXbpUDz30kHbs2KFbb7211vuOGjVKt9xyi5YvX66+fftGbt+8ebOWLVumm2++WZK0Zs0aXX755erVq5cmTpwol8ulDRs26Pvvv29wvOvXr9dvv/2m008/XSkpKQ1/wnUoLCzUFVdcodGjR+ukk07SSy+9pEmTJikUCunee+/VWWedpZNPPln/+te/NHHiRH366aeNEsfvv/+ujz76SCeddJI6deqk3NxczZ07V+edd57effddZWdnq1u3bpo4caJmzJihv/zlLzr00EMlSQMHDqx2PKfTqREjRujDDz/UXXfdVaV66KOPPpLP54tU44VCIV155ZX67rvvNG7cOHXr1k2rV6/Wc889p/Xr1+uxxx7bq+e0efNmSVJaWlrktjfffFOTJ0/W0UcfrRtvvFHl5eV66aWXdM455+iNN95Qp06dJDXuz/7UqVNVWlpa5bbnnntOK1euVKtWrSRJubm5GjdunAzD0LnnnquMjAx9/vnnuvXWW1VSUhKZTuvxeHThhRdq69atOv/889W2bVu99dZb+uqrr/bqe1Rp48aNkhSJRwq/x4wfP159+/bVzTffrMWLF+vpp59W586ddc455+zT4wEAsLdISgEAYtJBBx2ke++9N/J1QUGBXn311SpJqRdffFEJCQmRr8877zyNHz9ezzzzTCQpNWLECD388MNq3bp1lelCu0tPT9ezzz4ru90epWcjvfzyy9qyZYueffbZBt+3Min19ttva9KkSZHb33nnHbndbp144omSwlOgLrnkkir37d+/vyZNmqTvvvtOgwYN2qfnIEnPPPOMfv/9d73xxhs64IADJElnnXWW2rZtq3/961+65JJL1L59+xrvO2LECLlcLr333ntVklLvvfeeDMPQqFGjJIWrpPx+v5566illZGTsU7xr166VJPXs2XOfjlOb7du3a/r06ZEpVEOGDNGoUaN0ww036OWXX1a/fv0kSd26ddP48eP1wQcfNEpvs169eun999+vUqn3pz/9SaNGjdKrr76qq6++WllZWTrmmGM0Y8YM9e/fv9af/0qjR4/Wa6+9pi+++CJSOSaFG/p37tw5Mn3s7bff1pdffqkXXnihys9Ujx49dMcdd+j777+vMfH1R/n5+ZLClVgfffSRPvjgA/Xs2VNdu3aVJJWWlurvf/+7zjzzTE2bNi1yv7Fjx+qkk07S7NmzI7c35s/+iBEjqnz93nvvacWKFZo4cWIkofzPf/5TwWBQb7/9tlq3bi1JOvvsszVp0iTNnDlTZ511lhISEjR37lytX79eDz/8cOTne9y4cXWeiz8qKSlRfn6+fD6fvv/+e82aNUsJCQlVzpPX69WoUaN09dVXR+IZO3asXn31VZJSAADLMH0PABCTzjrrrCpfDxo0SAUFBSopKYnctntCqri4WPn5+Tr88MP1+++/q7i4uN6PNW7cuKgmpHbu3KkZM2boqquu2qskS/fu3XXwwQfr3XffjdxWVlamjz/+WMcee2yk8mb374fX61V+fn4kKbJixYp9fBZhCxYs0KGHHqq0tDTl5+dH/g0ZMkTBYFDffPNNrfdNSUnRMccco/fee69Kg+358+erf//+6tChg6RdlTILFy6sc0pgXSp/XpKTk/fpOLVJSkr
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": {
|
|||
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAK1CAYAAADyjObpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA+VxJREFUeJzs3Xd4VHX2x/HPnZ4OSSChVxUVEBFRUEQRCyIq7s+6iAWW1QVdu4gNxbWtFXFt2BuCHRu6YGEVBZGmYkEpUiUJkDr9/v64zECkBUhyZzLv1/PwcDP3zsyZyZ0kc+ac8zVM0zQFAAAAAAAA1DOH3QEAAAAAAAAgNZGYAgAAAAAAgC1ITAEAAAAAAMAWJKYAAAAAAABgCxJTAAAAAAAAsAWJKQAAAAAAANiCxBQAAAAAAABsQWIKAAAAAAAAtiAxBQAAAAAAAFuQmAIAoAH7+uuvtd9+++nrr7+2OxTU0HnnnafzzjuvVm/z4Ycf1n777Vert5notnfujx49Wv369avXOFauXKn99ttPb7zxRr3eLwAAycJldwAAANSml156SWlpaTr99NNr7TY3bNig119/XZ988ol+/fVXhcNhtW/fXhdccIFOOumkasdWVFToqaee0oIFC7Ro0SJt2rRJd955Z43iGTRokMrKyvTJJ5/IMIztHnP22WdrxYoV+vzzz+Vy8Wt8RxYvXqynnnpKc+bMUXFxsdLT03XAAQdo0KBBOu200+R0Ou0OsdZVVVVp4sSJ6tmzpw477DC7w5FkJcQmTJgQ/9rlcqmgoED9+vXTZZddpuzsbBujSyxff/21hg4dGv/a5XKpsLBQhxxyiC699FK1atVqt2+zX79+2mefffT444/XZqgAANQq/qIFADQor7zyiho3blyrian58+frwQcf1FFHHaVLLrlELpdL06ZN0xVXXKElS5bosssuix+7YcMGPfLII2revLn2228/zZ49u8b3M2jQIN1333365ptvdOihh26zf+XKlZo/f76GDBlCUmonpkyZoltuuUV5eXk69dRT1aZNG1VUVOirr77SDTfcoPXr1+viiy+2O8xaV1VVpQkTJmjUqFHbJKYuueQSjRgxwqbIpLFjxyo9PV1VVVWaNWuWXnjhBX3//fd65ZVX6jWOcePGyTTNer3P3XXeeeepS5cuCofD+uGHH/Tqq6/qs88+0zvvvKOCggK7wwMAoNbxVy0AIGVVVlYqPT19l8d17NhR06ZNU4sWLeKXnXvuubrgggv05JNPavjw4fHbadq0qf73v/+pSZMmWrRokf7v//6vxvEMGjRI999/v6ZOnbrdxNR7770n0zQ1aNCgGt9mqpk/f75uueUWdevWTU888YQyMzPj+y644AItWrRIv/zyi40R2sPlctmazDzhhBOUm5sryar6u+KKK/T+++9r4cKF6tq1a73F4Xa76+2+9lSPHj104oknSpL+8pe/qG3btrr99tv11ltv6e9//7vN0QEAUPuYMQUAsE1s7s3y5cs1evRo9ejRQ4cccoiuv/56VVVVVTv29ddf19ChQ9WrVy917txZJ510kl5++eVqx/Tr10+//PKLZs+erf3220/77bdffFbPG2+8Ea9gGjt2rHr16qW+ffvWKM5WrVpVS0pJkmEY6t+/v4LBoH7//ff45R6PR02aNNmTp0PNmjXToYceqmnTpikUCm2z/91331Xr1q110EEHadWqVRo7dqxOOOEEde3aVYcddpguu+wyrVy5cpf3069fP40ePXqby7c32ygYDGr8+PE67rjj1LlzZ/Xt21f33HOPgsHgTu/jtttu08EHH7zN91GSrrzySh1xxBGKRCKSpEWLFmnYsGE67LDD1LVrV/Xr10/XX3/9Lh/H9kyYMEGGYejee++tlpSK6dKlS7yabkfzt7Y3E2j06NE6+OCDtXr1av3973/XwQcfrD59+uill16SJP30008aOnSounXrpmOOOUZTp06tdps7mvEUOy939n0LBoN66KGHdPrpp+uQQw5Rt27ddO655+qrr76qFnOvXr3iz0Hs/H/44Ye3e/8nn3zydudYRaNR9enTp1oVYDQa1bPPPquBAweqS5cu6t27t26++WZt2rRphzHvSo8ePSRJK1asqHb5ggULNGzYMB1yyCE66KCDNGTIEM2dO7faMXtz7v95xtR5550Xf67+/G/r739paan+9a9/qW/fvurcubOOO+44PfHEE4pGo9Vuv7S0VKNHj9YhhxyiHj166LrrrlNZWdluPz9bO/zwwyUp/vh25+cmAADJgIopAIDtLr/8crVs2VJXXnmlfvjhB02ZMkW5ubm65ppr4se88sor2meffdSvXz+5XC598sknuvXWW2Wapv76179KksaMGaNx48YpPT093qqVn59f7b5uvfVW5ebmauTIkaqsrNyruIuKiiRJjRs33qvb2dqgQYN000036X//+5+OOeaY+OU//fSTfv75Z40cOVKSlcyZN2+eBg4cqMLCQq1atUqvvPKKhg4dqvfee09paWl7HUs0GtUll1yiuXPn6swzz1SHDh30888/67nnntOyZcv0n//8Z4fXPemkk/TSSy/p008/1YABA+KXV1VV6ZNPPtHgwYPldDpVXFysYcOGqXHjxhoxYoSys7O1cuVKffzxx7sdb1VVlb766iv16NFDzZs336PHvDORSER/+9vf1KNHD1199dWaOnWqbrvtNqWlpemBBx7QoEGDdPzxx2vSpEm67rrr1K1btz2aC/Rn5eXlmjJlik4++WSdccYZqqio0Guvvabhw4drypQp2n///ZWbm6uxY8dq7NixOu6443TcccdJ0g4Hng8YMEATJkzQ+vXrqyVS586dqz/++KPa7LSbb75Zb775pk4//XSdd955WrlypV566SX98MMPeuWVV/aoCimWZNl6xtSsWbP0t7/9TZ07d9aoUaNkGIbeeOMNnX/++Xr55ZfjlVW1ee5ffPHF21Q1vvPOO/rf//6nvLw8SdZ5NWTIEK1bt05nn322mjVrpnnz5un+++/X+vXrdcMNN0iSTNPUP/7xD82dO1dnn322OnTooI8//ljXXXfdbj8/W4sl7xo1alTt8pr83AQAIBmQmAIA2G7//ffXHXfcEf9648aNeu2116q9wXrxxRfl8/niXw8ZMkTDhg3TM888E09M9e/fXw8++KAaN26sU089dbv3lZOTo2effXavh19v3LhRU6ZMUY8ePdS0adO9uq2tnXDCCRo3bpzefffdaompd999V5LibXxHH310vN0n5phjjtFZZ52ladOm6bTTTtvrWKZOnaovv/xSL7zwQrzCRZL22Wcf3XLLLfr222/VvXv37V73kEMOUUFBgT744INqialPP/1UlZWV8cTHvHnztGnTJj311FPq0qVL/Lgrrrhit+Ndvny5QqGQ9t13392+bk0EAgGdcsop8XaqQYMGqU+fPhozZozuv//++GPq3bu3BgwYoLfeekuXXnrpXt9vTk6OZsyYIY/HE7/szDPP1IABA/TCCy/ojjvuUHp6uk444QSNHTtW++233w7P/5iTTjpJ48eP17Rp0zRkyJD45e+//77S09N19NFHS5K++eYbTZkyRffee2+1FtLDDjtMw4cP14cfflij1tJYdVUsefjyyy8rNzc33rJqmqbGjh2rww47TBMnTowP/z/77LM1cOBAPfjgg3r66acl1e65f8QRR1T7+ttvv9XXX3+tv/zlL/GKymeeeUa///673nzzTbVt2zYeV9OmTfXUU0/poosuUrNmzTR9+nTNmTNH11xzjYYPHy5JOuecc6oNNK+JiooKlZSUKBwOa/HixfrXv/4lwzB0/PHHVzuuJj83AQBIBrTyAQBsd/bZZ1f7ukePHtq4caPKy8vjl22dlCorK1NJSYl69uyp33//fbdaZc4888y9TkpFo1FdffXVKi0t1U033bRXt/VnOTk56tu3r2bMmBGv6DJNU++99546d+6sdu3aSar+fIRCIW3YsEGtW7dWdna2fvjhh1qJ5cMPP1SHDh3Uvn17lZSUxP/FWov+3AK3NcMwdOKJJ+qzzz5TRUVF/PI
|
|||
|
|
"text/plain": [
|
|||
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"metadata": {},
|
|||
|
|
"output_type": "display_data"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"name": "stdout",
|
|||
|
|
"output_type": "stream",
|
|||
|
|
"text": [
|
|||
|
|
"\n",
|
|||
|
|
"所有指标的分析图表已生成。\n"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"source": [
|
|||
|
|
"\n",
|
|||
|
|
"from turtle import down\n",
|
|||
|
|
"from src.analysis.result_analyzer import ResultAnalyzer\n",
|
|||
|
|
"# 导入所有必要的模块\n",
|
|||
|
|
"from src.data_manager import DataManager\n",
|
|||
|
|
"from src.backtest_engine import BacktestEngine\n",
|
|||
|
|
"from src.indicators.indicator_list import INDICATOR_LIST\n",
|
|||
|
|
"from src.indicators.indicators import RSI, HistoricalRange, NormalizedATR, RateOfChange, StochasticOscillator\n",
|
|||
|
|
"from src.strategies.OpenTwoFactorStrategy import SimpleLimitBuyStrategyLong, SimpleLimitBuyStrategyShort, SimpleLimitBuyStrategy\n",
|
|||
|
|
"\n",
|
|||
|
|
"\n",
|
|||
|
|
"# --- 配置参数 ---\n",
|
|||
|
|
"# 获取当前脚本所在目录,假设数据文件在项目根目录下的 data 文件夹内\n",
|
|||
|
|
"# data_file_path = '/mnt/d/PyProject/NewQuant/data/data/SHFE_rb2510/SHFE_rb2510_min60.csv'\n",
|
|||
|
|
"# data_file_path = \"/mnt/d/PyProject/NewQuant/data/data/KQ_m@CZCE_MA/KQ_m@CZCE_MA_min60.csv\"\n",
|
|||
|
|
"data_file_path = \"/mnt/d/PyProject/NewQuant/data/data/KQ_m@SHFE_rb/KQ_m@SHFE_rb_min60.csv\"\n",
|
|||
|
|
"\n",
|
|||
|
|
"initial_capital = 100000.0\n",
|
|||
|
|
"slippage_rate = 0.000 # 假设每笔交易0.1%的滑点\n",
|
|||
|
|
"commission_rate = 0.0001 # 假设每笔交易0.02%的佣金\n",
|
|||
|
|
"\n",
|
|||
|
|
"global_config = {\n",
|
|||
|
|
" 'symbol': 'KQ_m@SHFE_rb',\n",
|
|||
|
|
"}\n",
|
|||
|
|
"\n",
|
|||
|
|
"# Short 可用\n",
|
|||
|
|
"strategy_parameters = {\n",
|
|||
|
|
" # 'symbol': \"SHFE_rb2501\", # 根据您的数据文件中的品种名称调整\n",
|
|||
|
|
" 'trade_volume': 1,\n",
|
|||
|
|
" # 'range_factor': 1.8, # 示例值,需要通过网格搜索优化\n",
|
|||
|
|
" # 'profit_factor': 5.0, # 示例值\n",
|
|||
|
|
" 'range_factor': 0.2, # 示例值,需要通过网格搜索优化\n",
|
|||
|
|
" 'profit_factor': 3.8, # 示例值\n",
|
|||
|
|
" # 'range_factor_l': 1.8, # 示例值,需要通过网格搜索优化\n",
|
|||
|
|
" # 'profit_factor_l': 2.8, # 示例值\n",
|
|||
|
|
" # 'range_factor_s': 1.6, # 示例值,需要通过网格搜索优化\n",
|
|||
|
|
" # 'profit_factor_s': 2.1, # 示例值\n",
|
|||
|
|
" 'max_position': 10,\n",
|
|||
|
|
" 'enable_log': False,\n",
|
|||
|
|
" 'stop_loss_points': 20,\n",
|
|||
|
|
" 'use_indicator': True,\n",
|
|||
|
|
" # 'indicator': RSI(15, 52, 66),\n",
|
|||
|
|
" 'indicator': NormalizedATR(window=5, down_bound=0.62, up_bound=0.76),\n",
|
|||
|
|
" # 'indicator_l': HistoricalRange(21, 10, 25),\n",
|
|||
|
|
" # 'indicator_s': RSI(5, 20, 60),\n",
|
|||
|
|
"}\n",
|
|||
|
|
"start_time = datetime(2022, 1, 1)\n",
|
|||
|
|
"end_time = datetime(2024, 6, 1)\n",
|
|||
|
|
"\n",
|
|||
|
|
"start_time = datetime(2024, 6, 1)\n",
|
|||
|
|
"end_time = datetime(2025, 6, 1)\n",
|
|||
|
|
"\n",
|
|||
|
|
"\n",
|
|||
|
|
"# --- 1. 初始化数据管理器 ---\n",
|
|||
|
|
"print(\"初始化数据管理器...\")\n",
|
|||
|
|
"data_manager = DataManager(file_path=data_file_path, symbol=global_config['symbol'], start_time=start_time, end_time=end_time)\n",
|
|||
|
|
"# 确保 DataManager 能够重置以进行多次回测\n",
|
|||
|
|
"# data_manager.reset() # 首次运行不需要重置\n",
|
|||
|
|
"\n",
|
|||
|
|
"# --- 2. 初始化回测引擎并运行 ---\n",
|
|||
|
|
"print(\"\\n初始化回测引擎...\")\n",
|
|||
|
|
"engine = BacktestEngine(\n",
|
|||
|
|
" data_manager=data_manager,\n",
|
|||
|
|
" strategy_class=SimpleLimitBuyStrategyShort,\n",
|
|||
|
|
" # current_segment_symbol=strategy_parameters['symbol'],\n",
|
|||
|
|
" strategy_params=strategy_parameters,\n",
|
|||
|
|
" initial_capital=initial_capital,\n",
|
|||
|
|
" slippage_rate=slippage_rate,\n",
|
|||
|
|
" commission_rate=commission_rate,\n",
|
|||
|
|
" roll_over_mode=True,\n",
|
|||
|
|
" start_time=start_time,\n",
|
|||
|
|
" end_time=end_time,\n",
|
|||
|
|
" indicators=INDICATOR_LIST\n",
|
|||
|
|
")\n",
|
|||
|
|
"\n",
|
|||
|
|
"print(\"\\n开始运行回测...\")\n",
|
|||
|
|
"engine.run_backtest()\n",
|
|||
|
|
"print(\"\\n回测运行完毕。\")\n",
|
|||
|
|
"\n",
|
|||
|
|
"# --- 3. 获取回测结果 ---\n",
|
|||
|
|
"results = engine.get_backtest_results()\n",
|
|||
|
|
"portfolio_snapshots = results[\"portfolio_snapshots\"]\n",
|
|||
|
|
"trade_history = results[\"trade_history\"]\n",
|
|||
|
|
"initial_capital_result = results[\"initial_capital\"]\n",
|
|||
|
|
"bars = results[\"all_bars\"]\n",
|
|||
|
|
"\n",
|
|||
|
|
"# --- 4. 结果分析与可视化 ---\n",
|
|||
|
|
"if portfolio_snapshots:\n",
|
|||
|
|
" analyzer = ResultAnalyzer(portfolio_snapshots, trade_history, bars, initial_capital_result, INDICATOR_LIST)\n",
|
|||
|
|
"\n",
|
|||
|
|
" analyzer.generate_report()\n",
|
|||
|
|
" analyzer.plot_performance()\n",
|
|||
|
|
" metrics = analyzer.calculate_all_metrics()\n",
|
|||
|
|
" print(metrics)\n",
|
|||
|
|
"\n",
|
|||
|
|
" analyzer.analyze_indicators()\n",
|
|||
|
|
"else:\n",
|
|||
|
|
" print(\"\\n没有生成投资组合快照,无法进行结果分析。\")\n",
|
|||
|
|
"\n",
|
|||
|
|
"# --- 4. 结果分析与可视化 (待实现) ---\n",
|
|||
|
|
"# if portfolio_snapshots:\n",
|
|||
|
|
"# analyzer = ResultAnalyzer(portfolio_snapshots, trade_history, initial_capital_result)\n",
|
|||
|
|
"# metrics = analyzer.calculate_all_metrics()\n",
|
|||
|
|
"# print(\"\\n--- 绩效指标 ---\")\n",
|
|||
|
|
"# for key, value in metrics.items():\n",
|
|||
|
|
"# print(f\" {key}: {value:.4f}\")\n",
|
|||
|
|
"#\n",
|
|||
|
|
"# print(\"\\n--- 绘制绩效图表 ---\")\n",
|
|||
|
|
"# analyzer.plot_performance()\n",
|
|||
|
|
"# else:\n",
|
|||
|
|
"# print(\"\\n没有生成投资组合快照,无法进行结果分析。\")\n",
|
|||
|
|
"\n"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"metadata": {
|
|||
|
|
"kernelspec": {
|
|||
|
|
"display_name": "quant",
|
|||
|
|
"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.12.11"
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
"nbformat": 4,
|
|||
|
|
"nbformat_minor": 5
|
|||
|
|
}
|