2599 lines
250 KiB
Plaintext
2599 lines
250 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"## Начало лабы №7"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Загрузка даанных"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 15,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Index(['Date', 'Open', 'High', 'Low', 'Close', 'Adj Close', 'Volume',\n",
|
||
" 'SP_open', 'SP_high', 'SP_low', 'SP_close', 'SP_Ajclose', 'SP_volume',\n",
|
||
" 'DJ_open', 'DJ_high', 'DJ_low', 'DJ_close', 'DJ_Ajclose', 'DJ_volume',\n",
|
||
" 'EG_open', 'EG_high', 'EG_low', 'EG_close', 'EG_Ajclose', 'EG_volume',\n",
|
||
" 'EU_Price', 'EU_open', 'EU_high', 'EU_low', 'EU_Trend', 'OF_Price',\n",
|
||
" 'OF_Open', 'OF_High', 'OF_Low', 'OF_Volume', 'OF_Trend', 'OS_Price',\n",
|
||
" 'OS_Open', 'OS_High', 'OS_Low', 'OS_Trend', 'SF_Price', 'SF_Open',\n",
|
||
" 'SF_High', 'SF_Low', 'SF_Volume', 'SF_Trend', 'USB_Price', 'USB_Open',\n",
|
||
" 'USB_High', 'USB_Low', 'USB_Trend', 'PLT_Price', 'PLT_Open', 'PLT_High',\n",
|
||
" 'PLT_Low', 'PLT_Trend', 'PLD_Price', 'PLD_Open', 'PLD_High', 'PLD_Low',\n",
|
||
" 'PLD_Trend', 'RHO_PRICE', 'USDI_Price', 'USDI_Open', 'USDI_High',\n",
|
||
" 'USDI_Low', 'USDI_Volume', 'USDI_Trend', 'GDX_Open', 'GDX_High',\n",
|
||
" 'GDX_Low', 'GDX_Close', 'GDX_Adj Close', 'GDX_Volume', 'USO_Open',\n",
|
||
" 'USO_High', 'USO_Low', 'USO_Close', 'USO_Adj Close', 'USO_Volume'],\n",
|
||
" dtype='object')\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"application/vnd.microsoft.datawrangler.viewer.v0+json": {
|
||
"columns": [
|
||
{
|
||
"name": "index",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "Date",
|
||
"rawType": "object",
|
||
"type": "string"
|
||
},
|
||
{
|
||
"name": "Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "Adj Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "Volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "SP_open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "SP_high",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "SP_low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "SP_close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "SP_Ajclose",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "SP_volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "DJ_open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "DJ_high",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "DJ_low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "DJ_close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "DJ_Ajclose",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "DJ_volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "EG_open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EG_high",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EG_low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EG_close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EG_Ajclose",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EG_volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "EU_Price",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EU_open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EU_high",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EU_low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "EU_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "OF_Price",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OF_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OF_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OF_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OF_Volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "OF_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "OS_Price",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OS_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OS_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OS_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "OS_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "SF_Price",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "SF_Open",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "SF_High",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "SF_Low",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "SF_Volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "SF_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "USB_Price",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USB_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USB_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USB_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USB_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "PLT_Price",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLT_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLT_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLT_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLT_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "PLD_Price",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLD_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLD_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLD_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "PLD_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "RHO_PRICE",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "USDI_Price",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USDI_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USDI_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USDI_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USDI_Volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "USDI_Trend",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "GDX_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "GDX_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "GDX_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "GDX_Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "GDX_Adj Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "GDX_Volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "USO_Open",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USO_High",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USO_Low",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USO_Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USO_Adj Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "USO_Volume",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
}
|
||
],
|
||
"conversionMethod": "pd.DataFrame",
|
||
"ref": "2086a340-ae3b-4473-80ac-8c9384ddefee",
|
||
"rows": [
|
||
[
|
||
"0",
|
||
"2011-12-15",
|
||
"154.740005",
|
||
"154.949997",
|
||
"151.71000700000005",
|
||
"152.330002",
|
||
"152.330002",
|
||
"21521900",
|
||
"123.029999",
|
||
"123.199997",
|
||
"121.989998",
|
||
"122.18",
|
||
"105.44123799999998",
|
||
"199109200",
|
||
"11825.29004",
|
||
"11967.83984",
|
||
"11825.21973",
|
||
"11868.80957",
|
||
"11868.80957",
|
||
"136930000",
|
||
"74.550003",
|
||
"76.150002",
|
||
"72.150002",
|
||
"72.900002",
|
||
"70.43175500000002",
|
||
"787900",
|
||
"1.3018",
|
||
"1.2982",
|
||
"1.3051",
|
||
"1.2957",
|
||
"1",
|
||
"105.09",
|
||
"104.88",
|
||
"106.5",
|
||
"104.88",
|
||
"14330",
|
||
"1",
|
||
"93.42",
|
||
"94.91",
|
||
"96.0",
|
||
"93.33",
|
||
"0",
|
||
"53604",
|
||
"54248",
|
||
"54248",
|
||
"52316",
|
||
"119440",
|
||
"1",
|
||
"1.911",
|
||
"1.911",
|
||
"1.911",
|
||
"1.911",
|
||
"1",
|
||
"1414.65",
|
||
"1420.3",
|
||
"1423.35",
|
||
"1376.85",
|
||
"0",
|
||
"618.85",
|
||
"614.7",
|
||
"615.0",
|
||
"614.6",
|
||
"1",
|
||
"1425",
|
||
"80.34100000000002",
|
||
"80.565",
|
||
"80.63",
|
||
"80.13",
|
||
"22850",
|
||
"0",
|
||
"53.009998",
|
||
"53.139999",
|
||
"51.57",
|
||
"51.68",
|
||
"48.973877",
|
||
"20605600",
|
||
"36.900002",
|
||
"36.939999",
|
||
"36.049999",
|
||
"36.130001",
|
||
"36.130001",
|
||
"12616700"
|
||
],
|
||
[
|
||
"1",
|
||
"2011-12-16",
|
||
"154.309998",
|
||
"155.369995",
|
||
"153.899994",
|
||
"155.229996",
|
||
"155.229996",
|
||
"18124300",
|
||
"122.230003",
|
||
"122.949997",
|
||
"121.300003",
|
||
"121.589996",
|
||
"105.597549",
|
||
"220481400",
|
||
"11870.25",
|
||
"11968.17969",
|
||
"11819.30957",
|
||
"11866.38965",
|
||
"11866.38965",
|
||
"389520000",
|
||
"73.599998",
|
||
"75.099998",
|
||
"73.349998",
|
||
"74.900002",
|
||
"72.364037",
|
||
"896600",
|
||
"1.3035",
|
||
"1.3019999999999998",
|
||
"1.3087",
|
||
"1.2997",
|
||
"1",
|
||
"103.35",
|
||
"103.51",
|
||
"104.56",
|
||
"102.46",
|
||
"140080",
|
||
"0",
|
||
"93.79",
|
||
"93.43",
|
||
"94.8",
|
||
"92.53",
|
||
"1",
|
||
"53458",
|
||
"53650",
|
||
"54030",
|
||
"52890",
|
||
"65390",
|
||
"0",
|
||
"1.851",
|
||
"1.851",
|
||
"1.851",
|
||
"1.851",
|
||
"0",
|
||
"1420.25",
|
||
"1414.75",
|
||
"1431.75",
|
||
"1400.7",
|
||
"1",
|
||
"623.65",
|
||
"622.6",
|
||
"623.45",
|
||
"622.3",
|
||
"1",
|
||
"1400",
|
||
"80.249",
|
||
"80.175",
|
||
"80.395",
|
||
"79.935",
|
||
"13150",
|
||
"0",
|
||
"52.5",
|
||
"53.18",
|
||
"52.040001",
|
||
"52.68",
|
||
"49.921513",
|
||
"16285400",
|
||
"36.18",
|
||
"36.5",
|
||
"35.73",
|
||
"36.27",
|
||
"36.27",
|
||
"12578800"
|
||
],
|
||
[
|
||
"2",
|
||
"2011-12-19",
|
||
"155.479996",
|
||
"155.860001",
|
||
"154.360001",
|
||
"154.869995",
|
||
"154.869995",
|
||
"12547200",
|
||
"122.059998",
|
||
"122.32",
|
||
"120.029999",
|
||
"120.290001",
|
||
"104.468536",
|
||
"183903000",
|
||
"11866.54004",
|
||
"11925.87988",
|
||
"11735.19043",
|
||
"11766.25977",
|
||
"11766.25977",
|
||
"135170000",
|
||
"69.099998",
|
||
"69.800003",
|
||
"64.199997",
|
||
"64.699997",
|
||
"62.509384",
|
||
"2096700",
|
||
"1.2995",
|
||
"1.3043",
|
||
"1.3044",
|
||
"1.2981",
|
||
"0",
|
||
"103.64",
|
||
"103.63",
|
||
"104.57",
|
||
"102.37",
|
||
"147880",
|
||
"1",
|
||
"94.09",
|
||
"93.77",
|
||
"94.43",
|
||
"92.55",
|
||
"1",
|
||
"52961",
|
||
"53400",
|
||
"53400",
|
||
"52544",
|
||
"67280",
|
||
"0",
|
||
"1.81",
|
||
"1.81",
|
||
"1.81",
|
||
"1.81",
|
||
"0",
|
||
"1411.1",
|
||
"1422.65",
|
||
"1427.6",
|
||
"1404.6",
|
||
"0",
|
||
"608.8",
|
||
"626.0",
|
||
"630.0",
|
||
"608.6",
|
||
"0",
|
||
"1400",
|
||
"80.207",
|
||
"80.3",
|
||
"80.47",
|
||
"80.125",
|
||
"970",
|
||
"0",
|
||
"52.490002",
|
||
"52.549999",
|
||
"51.029999",
|
||
"51.169998",
|
||
"48.490578",
|
||
"15120200",
|
||
"36.389999",
|
||
"36.450001",
|
||
"35.93",
|
||
"36.200001",
|
||
"36.200001",
|
||
"7418200"
|
||
],
|
||
[
|
||
"3",
|
||
"2011-12-20",
|
||
"156.820007",
|
||
"157.429993",
|
||
"156.580002",
|
||
"156.979996",
|
||
"156.979996",
|
||
"9136300",
|
||
"122.18",
|
||
"124.139999",
|
||
"120.370003",
|
||
"123.93",
|
||
"107.629784",
|
||
"225418100",
|
||
"11769.20996",
|
||
"12117.12988",
|
||
"11768.83008",
|
||
"12103.58008",
|
||
"12103.58008",
|
||
"165180000",
|
||
"66.449997",
|
||
"68.099998",
|
||
"66.0",
|
||
"67.0",
|
||
"64.731514",
|
||
"875300",
|
||
"1.3079",
|
||
"1.3003",
|
||
"1.3133",
|
||
"1.2994",
|
||
"1",
|
||
"106.73",
|
||
"104.3",
|
||
"107.27",
|
||
"103.91",
|
||
"170240",
|
||
"1",
|
||
"95.55",
|
||
"96.39",
|
||
"99.7",
|
||
"96.39",
|
||
"1",
|
||
"53487",
|
||
"52795",
|
||
"53575",
|
||
"52595",
|
||
"55130",
|
||
"1",
|
||
"1.927",
|
||
"1.927",
|
||
"1.927",
|
||
"1.927",
|
||
"1",
|
||
"1434.75",
|
||
"1408.95",
|
||
"1436.55",
|
||
"1408.15",
|
||
"1",
|
||
"626.65",
|
||
"622.45",
|
||
"622.45",
|
||
"622.45",
|
||
"1",
|
||
"1400",
|
||
"80.273",
|
||
"80.89",
|
||
"80.94",
|
||
"80.035",
|
||
"22950",
|
||
"1",
|
||
"52.380001",
|
||
"53.25",
|
||
"52.369999",
|
||
"52.990002",
|
||
"50.215282",
|
||
"11644900",
|
||
"37.299999",
|
||
"37.610001",
|
||
"37.220001",
|
||
"37.560001",
|
||
"37.560001",
|
||
"10041600"
|
||
],
|
||
[
|
||
"4",
|
||
"2011-12-21",
|
||
"156.979996",
|
||
"157.529999",
|
||
"156.130005",
|
||
"157.160004",
|
||
"157.160004",
|
||
"11996100",
|
||
"123.93",
|
||
"124.360001",
|
||
"122.75",
|
||
"124.169998",
|
||
"107.838242",
|
||
"194230900",
|
||
"12103.58008",
|
||
"12119.7002",
|
||
"11999.44043",
|
||
"12107.74023",
|
||
"12107.74023",
|
||
"163250000",
|
||
"67.099998",
|
||
"69.400002",
|
||
"66.900002",
|
||
"68.5",
|
||
"66.180725",
|
||
"837600",
|
||
"1.3045",
|
||
"1.3079",
|
||
"1.3197",
|
||
"1.3024",
|
||
"0",
|
||
"107.71",
|
||
"107.15",
|
||
"108.17",
|
||
"106.16",
|
||
"145090",
|
||
"1",
|
||
"99.01",
|
||
"97.54",
|
||
"99.26",
|
||
"96.81",
|
||
"1",
|
||
"53148",
|
||
"53519",
|
||
"54184",
|
||
"52937",
|
||
"75950",
|
||
"0",
|
||
"1.97",
|
||
"1.97",
|
||
"1.97",
|
||
"1.97",
|
||
"1",
|
||
"1429.05",
|
||
"1434.4",
|
||
"1453.75",
|
||
"1417.65",
|
||
"0",
|
||
"635.9",
|
||
"625.7",
|
||
"641.5",
|
||
"623.8",
|
||
"1",
|
||
"1400",
|
||
"80.35",
|
||
"80.105",
|
||
"80.445",
|
||
"79.55",
|
||
"24140",
|
||
"1",
|
||
"53.150002",
|
||
"53.43",
|
||
"52.419998",
|
||
"52.959999",
|
||
"50.186852",
|
||
"8724300",
|
||
"37.669998",
|
||
"38.240002",
|
||
"37.52",
|
||
"38.110001",
|
||
"38.110001",
|
||
"10728000"
|
||
]
|
||
],
|
||
"shape": {
|
||
"columns": 81,
|
||
"rows": 5
|
||
}
|
||
},
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Date</th>\n",
|
||
" <th>Open</th>\n",
|
||
" <th>High</th>\n",
|
||
" <th>Low</th>\n",
|
||
" <th>Close</th>\n",
|
||
" <th>Adj Close</th>\n",
|
||
" <th>Volume</th>\n",
|
||
" <th>SP_open</th>\n",
|
||
" <th>SP_high</th>\n",
|
||
" <th>SP_low</th>\n",
|
||
" <th>...</th>\n",
|
||
" <th>GDX_Low</th>\n",
|
||
" <th>GDX_Close</th>\n",
|
||
" <th>GDX_Adj Close</th>\n",
|
||
" <th>GDX_Volume</th>\n",
|
||
" <th>USO_Open</th>\n",
|
||
" <th>USO_High</th>\n",
|
||
" <th>USO_Low</th>\n",
|
||
" <th>USO_Close</th>\n",
|
||
" <th>USO_Adj Close</th>\n",
|
||
" <th>USO_Volume</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>2011-12-15</td>\n",
|
||
" <td>154.740005</td>\n",
|
||
" <td>154.949997</td>\n",
|
||
" <td>151.710007</td>\n",
|
||
" <td>152.330002</td>\n",
|
||
" <td>152.330002</td>\n",
|
||
" <td>21521900</td>\n",
|
||
" <td>123.029999</td>\n",
|
||
" <td>123.199997</td>\n",
|
||
" <td>121.989998</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>51.570000</td>\n",
|
||
" <td>51.680000</td>\n",
|
||
" <td>48.973877</td>\n",
|
||
" <td>20605600</td>\n",
|
||
" <td>36.900002</td>\n",
|
||
" <td>36.939999</td>\n",
|
||
" <td>36.049999</td>\n",
|
||
" <td>36.130001</td>\n",
|
||
" <td>36.130001</td>\n",
|
||
" <td>12616700</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>2011-12-16</td>\n",
|
||
" <td>154.309998</td>\n",
|
||
" <td>155.369995</td>\n",
|
||
" <td>153.899994</td>\n",
|
||
" <td>155.229996</td>\n",
|
||
" <td>155.229996</td>\n",
|
||
" <td>18124300</td>\n",
|
||
" <td>122.230003</td>\n",
|
||
" <td>122.949997</td>\n",
|
||
" <td>121.300003</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>52.040001</td>\n",
|
||
" <td>52.680000</td>\n",
|
||
" <td>49.921513</td>\n",
|
||
" <td>16285400</td>\n",
|
||
" <td>36.180000</td>\n",
|
||
" <td>36.500000</td>\n",
|
||
" <td>35.730000</td>\n",
|
||
" <td>36.270000</td>\n",
|
||
" <td>36.270000</td>\n",
|
||
" <td>12578800</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>2011-12-19</td>\n",
|
||
" <td>155.479996</td>\n",
|
||
" <td>155.860001</td>\n",
|
||
" <td>154.360001</td>\n",
|
||
" <td>154.869995</td>\n",
|
||
" <td>154.869995</td>\n",
|
||
" <td>12547200</td>\n",
|
||
" <td>122.059998</td>\n",
|
||
" <td>122.320000</td>\n",
|
||
" <td>120.029999</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>51.029999</td>\n",
|
||
" <td>51.169998</td>\n",
|
||
" <td>48.490578</td>\n",
|
||
" <td>15120200</td>\n",
|
||
" <td>36.389999</td>\n",
|
||
" <td>36.450001</td>\n",
|
||
" <td>35.930000</td>\n",
|
||
" <td>36.200001</td>\n",
|
||
" <td>36.200001</td>\n",
|
||
" <td>7418200</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>2011-12-20</td>\n",
|
||
" <td>156.820007</td>\n",
|
||
" <td>157.429993</td>\n",
|
||
" <td>156.580002</td>\n",
|
||
" <td>156.979996</td>\n",
|
||
" <td>156.979996</td>\n",
|
||
" <td>9136300</td>\n",
|
||
" <td>122.180000</td>\n",
|
||
" <td>124.139999</td>\n",
|
||
" <td>120.370003</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>52.369999</td>\n",
|
||
" <td>52.990002</td>\n",
|
||
" <td>50.215282</td>\n",
|
||
" <td>11644900</td>\n",
|
||
" <td>37.299999</td>\n",
|
||
" <td>37.610001</td>\n",
|
||
" <td>37.220001</td>\n",
|
||
" <td>37.560001</td>\n",
|
||
" <td>37.560001</td>\n",
|
||
" <td>10041600</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>2011-12-21</td>\n",
|
||
" <td>156.979996</td>\n",
|
||
" <td>157.529999</td>\n",
|
||
" <td>156.130005</td>\n",
|
||
" <td>157.160004</td>\n",
|
||
" <td>157.160004</td>\n",
|
||
" <td>11996100</td>\n",
|
||
" <td>123.930000</td>\n",
|
||
" <td>124.360001</td>\n",
|
||
" <td>122.750000</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>52.419998</td>\n",
|
||
" <td>52.959999</td>\n",
|
||
" <td>50.186852</td>\n",
|
||
" <td>8724300</td>\n",
|
||
" <td>37.669998</td>\n",
|
||
" <td>38.240002</td>\n",
|
||
" <td>37.520000</td>\n",
|
||
" <td>38.110001</td>\n",
|
||
" <td>38.110001</td>\n",
|
||
" <td>10728000</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"<p>5 rows × 81 columns</p>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Date Open High Low Close Adj Close \\\n",
|
||
"0 2011-12-15 154.740005 154.949997 151.710007 152.330002 152.330002 \n",
|
||
"1 2011-12-16 154.309998 155.369995 153.899994 155.229996 155.229996 \n",
|
||
"2 2011-12-19 155.479996 155.860001 154.360001 154.869995 154.869995 \n",
|
||
"3 2011-12-20 156.820007 157.429993 156.580002 156.979996 156.979996 \n",
|
||
"4 2011-12-21 156.979996 157.529999 156.130005 157.160004 157.160004 \n",
|
||
"\n",
|
||
" Volume SP_open SP_high SP_low ... GDX_Low GDX_Close \\\n",
|
||
"0 21521900 123.029999 123.199997 121.989998 ... 51.570000 51.680000 \n",
|
||
"1 18124300 122.230003 122.949997 121.300003 ... 52.040001 52.680000 \n",
|
||
"2 12547200 122.059998 122.320000 120.029999 ... 51.029999 51.169998 \n",
|
||
"3 9136300 122.180000 124.139999 120.370003 ... 52.369999 52.990002 \n",
|
||
"4 11996100 123.930000 124.360001 122.750000 ... 52.419998 52.959999 \n",
|
||
"\n",
|
||
" GDX_Adj Close GDX_Volume USO_Open USO_High USO_Low USO_Close \\\n",
|
||
"0 48.973877 20605600 36.900002 36.939999 36.049999 36.130001 \n",
|
||
"1 49.921513 16285400 36.180000 36.500000 35.730000 36.270000 \n",
|
||
"2 48.490578 15120200 36.389999 36.450001 35.930000 36.200001 \n",
|
||
"3 50.215282 11644900 37.299999 37.610001 37.220001 37.560001 \n",
|
||
"4 50.186852 8724300 37.669998 38.240002 37.520000 38.110001 \n",
|
||
"\n",
|
||
" USO_Adj Close USO_Volume \n",
|
||
"0 36.130001 12616700 \n",
|
||
"1 36.270000 12578800 \n",
|
||
"2 36.200001 7418200 \n",
|
||
"3 37.560001 10041600 \n",
|
||
"4 38.110001 10728000 \n",
|
||
"\n",
|
||
"[5 rows x 81 columns]"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"df = pd.read_csv(\"..//static//csv//FINAL_USO.csv\")\n",
|
||
"print(df.columns)\n",
|
||
"display(df.head())"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Создание лингвистических переменных**\n",
|
||
"\n",
|
||
"Входные переменные: OF_Price (цены на нефть) и SF_Price (цена на серебро) . \\\n",
|
||
"Выходная переменная: Adj Close (цена)."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 16,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import numpy as np\n",
|
||
"from skfuzzy import control as ctrl\n",
|
||
"\n",
|
||
"\n",
|
||
"# Инициализация лингвистических переменных\n",
|
||
"oil_price = ctrl.Antecedent(np.arange(df['OF_Price'].min(), df['OF_Price'].max(), 10), \"oil_price\")\n",
|
||
"silver_price = ctrl.Antecedent(np.arange(df['SF_Price'].min(), df['SF_Price'].max(), 1000), \"silver_price\")\n",
|
||
"adj_close = ctrl.Consequent(np.arange(df['Adj Close'].min(), df['Adj Close'].max(), 10), \"adj_close\")"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Формирование нечетких переменных для лингвистических переменных и их визуализация**"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"c:\\Users\\Алина\\AppData\\Local\\Programs\\Python\\Python312\\Lib\\site-packages\\skfuzzy\\control\\fuzzyvariable.py:125: UserWarning: FigureCanvasAgg is non-interactive, and thus cannot be shown\n",
|
||
" fig.show()\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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Dur7Ati1axcvvvgiM2bM4O9//zvr169n2rRpxMTEMGnSpPp7qFvJu06w3N+vLV68mKNHj3L99dcDwf3/JMB9991HaWkp3bp1IzIyEpfLxaOPPsqECRMAgvq90+v1DBw4kEceeYTu3btjNBp55513WLNmDZmZmUF9b7/WlPuw2+0YDIYGz0dFRZGcnBxU99qYYP8eBElu6nXt2hWr1UpJSQn/+9//mDRpEitXrlQ7rFbbt28f06dPZ9myZSd92gp2dZ+EASwWCwMGDKBjx4689957xMXFqRhZ67ndbvr3789jjz0GQN++fdm8eTNz585l0qRJKkfnXS+//DKXXHIJ7dq1UzsUr3jvvfd46623ePvtt+nZsydWq5Xbb7+ddu3ahcR798Ybb3DjjTfSvn17IiMjOeeccxg/fjwbNmxQOzQh6sm01AkxMTFkZmbSr18/Zs+eTXZ2Nv/9738xmUxUV1dz9OjRBscXFRVhMpnUCbYZNmzYgMPh4JxzziEqKoqoqChWrlzJM888Q1RUFEajMajv79cSExPJysqioKAg6N+39PR0evTo0eCx7t2710+71d3Db7sXguX+6vz88898/fXXTJ48uf6xYH/v7r77bu677z7+/Oc/07t3b6677jruuOOO+s1/g/2969KlCytXrqSsrIx9+/axbt06ampq6Ny5c9DfW52m3IfJZMLhcDR4vra2lsOHDwfVvTYm2L8HQZKbU3K73VRVVdGvXz+io6NZvnx5/XPbt29n7969DBw4UMUIm+bCCy8kNzcXq9Va/9W/f38mTJhQ/9/BfH+/VlZWxs6dO0lPTw/6923w4MFs3769wWM7duygY8eOAJx99tmYTKYG91daWsratWuD4v7qvPrqqxgMBi677LL6x4L9vauoqGiw2S9AZGQkbrcbCJ33LiEhgfT0dI4cOcKXX37JmDFjQubemnIfAwcO5OjRow1GrL755hvcbjcDBgzwe8zeFOzfg4B0SymKotx3333KypUrld27dys5OTnKfffdp2g0GuWrr75SFEVR/vrXvyodOnRQvvnmG+Wnn35SBg4cqAwcOFDlqFvu191SihK893fnnXcqK1asUHbv3q2sXr1aGT58uJKamqo4HA5FUYL3vhRFUdatW6dERUUpjz76qJKfn6+89dZbSnx8vPLmm2/WHzNnzhwlMTFR+fjjj5WcnBxlzJgxytlnn60cP35cxcibzuVyKR06dFDuvffek54L5vdu0qRJSvv27ZXPPvtM2b17t/Lhhx8qqampyj333FN/TDC/d0uXLlWWLFmi7Nq1S/nqq6+U7OxsZcCAAUp1dbWiKMFzb8eOHVM2bdqkbNq0SQGUp556Stm0aZPy888/K4rStPsYOXKk0rdvX2Xt2rXKqlWrFLPZrIwfP16tW6p3pns7dOiQsmnTJuXzzz9XAOXdd99VNm3apBQWFtafI5i/BxVFUSS5URTlxhtvVDp27KjExMQoaWlpyoUXXlif2CiKohw/flz529/+piQlJSnx8fHKFVdc0eB/gmDz2+QmWO9v3LhxSnp6uhITE6O0b99eGTdunFJQUFD/fLDeV51PP/1U6dWrlxIbG6t069ZNmTdvXoPn3W638tBDDylGo1GJjY1VLrzwQmX79u0qRdt8X375pQI0GnMwv3elpaXK9OnTlQ4dOiharVbp3Lmz8sADDyhVVVX1xwTze7do0SKlc+fOSkxMjGIymZRbb71VOXr0aP3zwXJv3377rQKc9DVp0iRFUZp2H4cOHVLGjx+v6HQ6pU2bNsoNN9ygHDt2TIW7aehM9/bqq682+vysWbPqzxHM34OKoigaRfnVsplCCCGEEEFOam6EEEIIEVIkuRFCCCFESJHkRgghhBAhRZIbIYQQQoQUSW6EEEIIEVIkuRFCCCFESJHkRgghhBAhRZIbIYQQQoQUSW6EEKpasWIFGo2mfpO+hQsXkpiY6PPrdurUiaefftrn1xFC+F+U2gEIIcLboEGDKCwspG3btn697vr160lISPDrNYUQ/iHJjRBCVTExMZhMJr9dr7q6mpiYGNLS0vx2TSGEf8m0lBDC56qqqpg2bRoGgwGtVsuQIUNYv349cPK0VHP84x//oE+fPrz00ktkZGQQHx/P1VdfTUlJSf0x119/PWPHjuXRRx+lXbt2dO3aFTh5Wuro0aP85S9/wWg0otVq6dWrF5999ln986tWreL8888nLi6OjIwMpk2bRnl5ecv+QYQQPiXJjRDC5+655x4++OADXnvtNTZu3EhmZiYjRozg8OHDrT53QUEB7733Hp9++ilLly5l06ZN/O1vf2twzPLly9m+fTvLli1rkLDUcbvdXHLJJaxevZo333yTrVu3MmfOHCIjIwHYuXMnI0eO5KqrriInJ4dFixaxatUqpk6d2ur4hRDeJ9NSQgifKi8v58UXX2ThwoVccsklAMyfP59ly5bx8ssvc+6557bq/JWVlbz++uu0b98egGeffZbLLruMJ598sn66KyEhgQULFhATE9PoOb7++mvWrVtHXl4eWVlZAHTu3Ln++dmzZzNhwgRuv/12AMxmM8888wxDhw7lxRdfRKvVtuoehBDeJSM3Qgif2rlzJzU1NQwePLj+sejoaM477zzy8vJaff4OHTrUJzYAAwcOxO12s3379vrHevfufcrEBsBqtXLWWWfVJza/ZbPZWLhwITqdrv5rxIgRuN1udu/e3ep7EEJ4l4zcCCFC3pm6ouLi4k77fFlZGX/5y1+YNm3aSc916NChVbEJIbxPRm6EED7VpUsXYmJiWL16df1jNTU1rF+/nh49erT6/Hv37uXgwYP1f//xxx+JiIioLxxuCovFwv79+9mxY0ejz59zzjls3bqVzMzMk75ONyIkhFCHJDdCCJ9KSEjglltu4e6772bp0qVs3bqVm2++mYqKCm666aZWn1+r1TJp0iRsNhvff/8906ZN4+qrr25We/nQoUO54IILuOqqq1i2bBm7d+9myZIlLF26FIB7772XH374galTp2K1WsnPz+fjjz+WgmIhApRMSwkhfG7OnDm43W6uu+46jh07Rv/+/fnyyy9JSkpq9bkzMzO58sorufTSSzl8+DCjRo3ihRdeaPZ5PvjgA+666y7Gjx9PeXk5mZmZzJkzB/CM7KxcuZIHHniA888/H0VR6NKlC+PGjWt1/EII79MoiqKoHYQQQrTEP/7xDxYvXozValU7FCFEAJFpKSGEEEKEFJmWEkIErJ49e/Lzzz83+txLL73k52iEEMFCpqWEEAHr559/pqamptHnjEYjer3ezxEJIYKBJDdCCCGECClScyOEEEKIkCLJjRBCCCFCiiQ3QgghhAgpktwIIYQQIqRIciOEEEKIkCLJjRBCCCFCiiQ3QgghhAgp/w96PwchKjsxLgAAAABJRU5ErkJggg==",
|
||
"text/plain": [
|
||
"<Figure size 640x480 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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",
|
||
"text/plain": [
|
||
"<Figure size 640x480 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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0oV58+bxv//9j5dffpmlS5cCcMkll5CXl0d4eDgxMTEtPgIDAzv9NQghrEsKICGE2QUHBxMaGsrSpUvZv38/3377LWlpac2v33jjjeh0OubPn092djZr167lhRde6PT97r33XsrLy7nhhhv46aefyMvL49133yU3N/ecc319fbn77rt55JFHWL9+PdnZ2cyfP5/q6mpuu+02ABYsWMDnn3/O/v372bt3L6tXryYhIQGAOXPmEBYWxvTp09m8eTOHDh0iPT2d+++/n2PHjnX6axBCWJcUQEIIs3NxceHDDz9k586dJCUl8dBDD/Gvf/2r+XU/Pz++/PJLsrKyGDRoEE8++STPP/98p+8XGhrKt99+S2VlJWPHjmXw4MEsW7aszTFBzz33HNdeey0333wzl1xyCfv37+err74iODgYAA8PD5544gmSk5MZM2YMrq6ufPjhhwD4+Pjw/fff06NHD6655hoSEhK47bbbqKmpISAgoNNfgxDCunQmk8mkdQghhPi93Nxc4uPjycvLIyYmRus4QggHIy1AQgibYzAY+PjjjwkICCA6OlrrOEIIByQFkBDC5tx2220sWbKE119/HU9PT+66667mKee//7jrrru0jiuEsEPSBSaEsHnFxcWUl5e3+lpAQADh4eFWTiSEsHdSAAkhhBDC6UgXmBBCCCGcjhRAQgghhHA6UgAJIYQQwulIASSEEEIIpyMFkBBCCCGcjhRAQgghhHA6UgAJIYQQwun8f3HhxAn8j4dTAAAAAElFTkSuQmCC",
|
||
"text/plain": [
|
||
"<Figure size 640x480 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"import skfuzzy as fuzz\n",
|
||
"\n",
|
||
"oil_price['low'] = fuzz.zmf(oil_price.universe, 40, 50)\n",
|
||
"oil_price['average'] = fuzz.trapmf(oil_price.universe, [60, 70, 80, 90])\n",
|
||
"oil_price['high'] = fuzz.smf(oil_price.universe, 100, 120)\n",
|
||
"\n",
|
||
"silver_price['low'] = fuzz.zmf(silver_price.universe, 35000, 45000)\n",
|
||
"silver_price['average'] = fuzz.trapmf(silver_price.universe, [35000, 45000, 50000, 60000])\n",
|
||
"silver_price['high'] = fuzz.smf(silver_price.universe, 50000, 60000)\n",
|
||
"\n",
|
||
"adj_close['low'] = fuzz.zmf(adj_close.universe,110, 135)\n",
|
||
"adj_close['average'] = fuzz.trapmf(adj_close.universe, [135, 145, 155, 165])\n",
|
||
"adj_close['high'] = fuzz.smf(adj_close.universe, 160, 170)\n",
|
||
"\n",
|
||
"oil_price.view()\n",
|
||
"silver_price.view()\n",
|
||
"adj_close.view()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Формирование и визуализация базы нечетких правил**\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 18,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/plain": [
|
||
"(<Figure size 640x480 with 1 Axes>, <Axes: >)"
|
||
]
|
||
},
|
||
"execution_count": 18,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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yVN2b+zdu1e/+tWvzP8LnKNAN8ECEDnC/rc61PbL52Um673xA9S3S4Ik1RsK/K/37ZKg98YPMPTRwA8F6gTIE69TXV2t1atXa+LEierdu7cKCgpMvbYRHRXXrFmjVatWyefznVQXEBMTExLbB8/kgpbmz82m4+eFAIgsofvO1gBm7Zfv2zWxSTUEHdrGat6dWd8vU+8qkbvsNMvUCbHK7pakUX2Sz7nxUWME6hPd/n17tSr/Ja1du1bvv/++jh49KrvdLq/Xq6+//tq06zblMU3tf4tRH1lapItrjq8QpaSkaODAgcrMzFSvXr106aWXhlwY8Hg8KigoUH5+vpYuXaq4vOmKanO+addLTogNiUdAAIwV1r/VZu6Xn3fnuXX2O1Fq+3hNGZauKUoPiSOBA3UC5K3DBqmi/OQeB/4ivCuuuMKU6xq5QrQjOlULC/folt4dDRnPaF6vVxs2bFB+fr7+/ve/65tvvlFKSorGjRunQynd9PauClO2F/7wHA8AkSNsw4B/v7zRTtwvb+Sn9biYqKBXYPvbJ5t5AmRyQqxm5y/ULbfcovLycv2wPrVfv37q2bOnevbsqR49eqhHjx5KSUlp0jY9M1aIpry5XVentAuZXvw+n09btmxRfn6+Fi1apP3796tDhw667bbblJeXp549e8pms2n3gQot32HOOR7+JlgAIk/Y1gzQae3cBOIEyEGDBqm4uFhDhgw56fXU1FSNGzdOLVq00MKFC5WXl6e0tDS1bt1aV199te6//369+uqr+te//qWamoYXhEZqR0Wfz6eioiL95je/UUpKinr37q358+crJydHH3zwgfbs2aNp06bpyiuvrCt2DNVzPACEtrDdWjhgWoGpn3BDdb98UwXyBEifz6dnn31WDz/8sLxer+69917NnDmz7ntLS0v1ySefnPRn165d8vl8io6OVvfu3etWD3r27KnLLrtMcXEnF6+F6omWTbFr1y4tWrRI+fn52r59u8477zzddNNNGjFihAYMGFBv3QKnFgJorLAMA1bbL2+00a8UauPnZYY+V3bYbWqvb/XVgknq1auXLrroIiUmJioxMVHffPONXn31Vb344ov1Nuw5cuSItm3bVhcOtm7dKpfLVXd0c1paWl046NWrlwoOJ2p+odu0Z+SB6qi4d+9eLV68WPn5+dq6datatmypnJwc5eXlaeDA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",
|
||
"text/plain": [
|
||
"<Figure size 640x480 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"import numpy as np\n",
|
||
"import skfuzzy as fuzz\n",
|
||
"from skfuzzy import control as ctrl\n",
|
||
"# Нечеткие правила\n",
|
||
"rule1 = ctrl.Rule(silver_price[\"low\"] & oil_price[\"low\"], adj_close[\"low\"])\n",
|
||
"rule2 = ctrl.Rule(silver_price[\"low\"] & oil_price[\"average\"], adj_close[\"low\"])\n",
|
||
"rule3 = ctrl.Rule(silver_price[\"low\"] & oil_price[\"high\"], adj_close[\"low\"])\n",
|
||
"rule4 = ctrl.Rule(silver_price[\"average\"] & oil_price[\"low\"], adj_close[\"low\"])\n",
|
||
"rule5 = ctrl.Rule(silver_price[\"average\"] & oil_price[\"average\"], adj_close[\"low\"])\n",
|
||
"rule6 = ctrl.Rule(silver_price[\"average\"] & oil_price[\"high\"], adj_close[\"low\"])\n",
|
||
"rule7 = ctrl.Rule(silver_price[\"high\"] & oil_price[\"low\"], adj_close[\"average\"])\n",
|
||
"rule8 = ctrl.Rule(silver_price[\"high\"] & oil_price[\"average\"], adj_close[\"high\"])\n",
|
||
"rule9 = ctrl.Rule(silver_price[\"high\"] & oil_price[\"high\"], adj_close[\"high\"])\n",
|
||
"rule1.view()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Создание нечеткой системы и добавление нечетких правил в базу знаний нечеткой системы**"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 19,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"price_ctrl = ctrl.ControlSystem(\n",
|
||
" [\n",
|
||
" rule1,\n",
|
||
" rule2,\n",
|
||
" rule3,\n",
|
||
" rule4,\n",
|
||
" rule5,\n",
|
||
" rule6,\n",
|
||
" rule7,\n",
|
||
" rule8,\n",
|
||
" rule9,\n",
|
||
" ]\n",
|
||
")\n",
|
||
"\n",
|
||
"# Создание симулятора нечеткой системы\n",
|
||
"price_sim = ctrl.ControlSystemSimulation(price_ctrl)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Пример расчета выходной переменной adj_close на основе входных переменных silver_price и oil_price** \\\n",
|
||
"Система также формирует подробный журнал выполнения процесса нечеткого логического вывода"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 20,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"=============\n",
|
||
" Antecedents \n",
|
||
"=============\n",
|
||
"Antecedent: silver_price = 60000\n",
|
||
" - low : 0.0\n",
|
||
" - average : 0.014110000000000011\n",
|
||
" - high : 0.99765774\n",
|
||
"Antecedent: oil_price = 30\n",
|
||
" - low : 1.0\n",
|
||
" - average : 0.0\n",
|
||
" - high : 0.0\n",
|
||
"\n",
|
||
"=======\n",
|
||
" Rules \n",
|
||
"=======\n",
|
||
"RULE #0:\n",
|
||
" IF silver_price[low] AND oil_price[low] THEN adj_close[low]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[low] : 0.0\n",
|
||
" - oil_price[low] : 1.0\n",
|
||
" silver_price[low] AND oil_price[low] = 0.0\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[low] : 0.0\n",
|
||
"\n",
|
||
"RULE #1:\n",
|
||
" IF silver_price[low] AND oil_price[average] THEN adj_close[low]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[low] : 0.0\n",
|
||
" - oil_price[average] : 0.0\n",
|
||
" silver_price[low] AND oil_price[average] = 0.0\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[low] : 0.0\n",
|
||
"\n",
|
||
"RULE #2:\n",
|
||
" IF silver_price[low] AND oil_price[high] THEN adj_close[low]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[low] : 0.0\n",
|
||
" - oil_price[high] : 0.0\n",
|
||
" silver_price[low] AND oil_price[high] = 0.0\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[low] : 0.0\n",
|
||
"\n",
|
||
"RULE #3:\n",
|
||
" IF silver_price[average] AND oil_price[low] THEN adj_close[low]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[average] : 0.014110000000000011\n",
|
||
" - oil_price[low] : 1.0\n",
|
||
" silver_price[average] AND oil_price[low] = 0.014110000000000011\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[low] : 0.014110000000000011\n",
|
||
"\n",
|
||
"RULE #4:\n",
|
||
" IF silver_price[average] AND oil_price[average] THEN adj_close[low]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[average] : 0.014110000000000011\n",
|
||
" - oil_price[average] : 0.0\n",
|
||
" silver_price[average] AND oil_price[average] = 0.0\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[low] : 0.0\n",
|
||
"\n",
|
||
"RULE #5:\n",
|
||
" IF silver_price[average] AND oil_price[high] THEN adj_close[low]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[average] : 0.014110000000000011\n",
|
||
" - oil_price[high] : 0.0\n",
|
||
" silver_price[average] AND oil_price[high] = 0.0\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[low] : 0.0\n",
|
||
"\n",
|
||
"RULE #6:\n",
|
||
" IF silver_price[high] AND oil_price[low] THEN adj_close[average]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[high] : 0.99765774\n",
|
||
" - oil_price[low] : 1.0\n",
|
||
" silver_price[high] AND oil_price[low] = 0.99765774\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[average] : 0.99765774\n",
|
||
"\n",
|
||
"RULE #7:\n",
|
||
" IF silver_price[high] AND oil_price[average] THEN adj_close[high]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[high] : 0.99765774\n",
|
||
" - oil_price[average] : 0.0\n",
|
||
" silver_price[high] AND oil_price[average] = 0.0\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[high] : 0.0\n",
|
||
"\n",
|
||
"RULE #8:\n",
|
||
" IF silver_price[high] AND oil_price[high] THEN adj_close[high]\n",
|
||
"\tAND aggregation function : fmin\n",
|
||
"\tOR aggregation function : fmax\n",
|
||
"\n",
|
||
" Aggregation (IF-clause):\n",
|
||
" - silver_price[high] : 0.99765774\n",
|
||
" - oil_price[high] : 0.0\n",
|
||
" silver_price[high] AND oil_price[high] = 0.0\n",
|
||
" Activation (THEN-clause):\n",
|
||
" adj_close[high] : 0.0\n",
|
||
"\n",
|
||
"\n",
|
||
"==============================\n",
|
||
" Intermediaries and Conquests \n",
|
||
"==============================\n",
|
||
"Consequent: adj_close = 149.2413379761956\n",
|
||
" low:\n",
|
||
" Accumulate using accumulation_max : 0.014110000000000011\n",
|
||
" average:\n",
|
||
" Accumulate using accumulation_max : 0.99765774\n",
|
||
" high:\n",
|
||
" Accumulate using accumulation_max : 0.0\n",
|
||
"\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/plain": [
|
||
"np.float64(149.2413379761956)"
|
||
]
|
||
},
|
||
"execution_count": 20,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"price_sim.input['silver_price'] = 60000\n",
|
||
"price_sim.input['oil_price'] = 30\n",
|
||
"price_sim.compute()\n",
|
||
"\n",
|
||
"price_sim.print_state()\n",
|
||
"\n",
|
||
"price_sim.output[\"adj_close\"]"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Визуализация функции принадлежности для выходной переменной adj_close** \\\n",
|
||
"Функция получена в процессе аккумуляции и используется для дефаззификации значения выходной переменной influx"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 21,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"image/png": "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/PhxwsPD1Y4ihHBBUgAJIRySTqcjOjpa7RhCCBclTWBCCJtYu3Yt48aNIzg4mLCwMKZNm8aBAwfant++fTtDhw7F29ub4cOH89NPP7V7fXebwPbt28e0adMIDAwkICCA8ePHtzvf2RobG3nggQeIjIzE29ubcePGsWPHjrbnT506xa233kpERAQ+Pj4MGDCAd955p+35I0eOcPPNNxMcHExoaCjXX389hw4d6vrFEUKoTgogIYRN1NbWkpmZyY8//sj69evRarXceOONmM1mampqmDZtGqmpqezcuZO//e1vPPLIIz0+19GjR5kwYQJ6vZ5vv/2WnTt38oc//IGWlpYO93/sscf49NNPee+999i1axeJiYlMnjwZo9EIwNNPP01ubi5r1qzBYDAwb968tqa45uZmJk+eTEBAABs3bmTTpk34+/tzzTXX0NTU1OP3IISwL2kCE0LYxE033dTu67fffpuIiAhyc3PZvHkzZrOZRYsW4e3tzSWXXEJJSQn33HNPj871+uuvExQUxOLFi/H09AQgKSmpw31ra2uZN28e7777Ltdeey0ACxcuZN26dSxatIhHH32U4uJihg4dyvDhwwFISEhoe/2SJUswm8289dZbaDQaAN555x2Cg4PJysri6quv7tF7EELYl9wBEkLYREFBATNmzKBfv34EBga2FRHFxcUYDAbS09Px9vZu23/06NE9Ptfu3bsZP358W/FzPgcOHKC5uZmxY8e2bfP09GTkyJEYDAYA7rnnHhYvXsyQIUN47LHH2Lx5c9u+e/bsobCwkICAAPz9/fH39yc0NJSGhoZOm9yEEI5H7gAJIWxi+vTp9OnTh4ULFxIbG4vZbGbQoEE2aSby8fGx6vGuvfZaDh8+zOrVq1m3bh1XXnkl9957Ly+++CI1NTVkZGTw4YcfnvO6iIgIq+YQQtiO3AESQlhdRUUF+fn5PPXUU1x55ZWkpKRw6tSptudTUlLIzs6moaGhbdvWrVt7fL709HQ2btxIc3PzBfft378/Xl5ebNq0qW1bc3MzO3bsIDU1tW1bREQEt99+O//73/945ZVXWLBgAQDDhg2joKCAyMhIEhMT2z2CgoJ6/B6EEPYlBZAQwupCQkIICwtjwYIFFBYW8u2335KZmdn2/O9+9zs0Gg2zZs0iNzeX1atX8+KLL/b4fPfddx/V1dX89re/5ccff6SgoIAPPviA/Pz8c/b18/Pjnnvu4dFHH2Xt2rXk5uYya9Ys6urquOuuuwCYM2cOn3/+OYWFhezbt4+VK1eSkpICwK233kp4eDjXX389GzdupKioiKysLB544AFKSkp6/B6EEPYlBZAQwuq0Wi2LFy9m586dDBo0iIcffpj//Oc/bc/7+/vz5ZdfkpOTw9ChQ3nyySd54YUXeny+sLAwvv32W2pqarjsssvIyMhg4cKFnfYJev7557npppu47bbbGDZsGIWFhXz11VeEhIQA4OXlxezZs0lPT2fChAnodDoWL14MgK+vL99//z29e/fmV7/6FSkpKdx11100NDQQGBjY4/cghLAvjcVisagdQgghfik/P5/k5GQKCgpITExUO44QwsXIHSAhhMMxGo188sknBAYGEh8fr3YcIYQLkgJICOFw7rrrLt58803mzZuHXq/nT3/6U9uQ818+/vSnP6kdVwjhhKQJTAjh8MrLy6muru7wucDAQCIjI+2cSAjh7KQAEkIIIYTbkSYwIYQQQrgdKYCEEEII4XakABJCCCGE25ECSAghhBBuRwogIYQQQrgdKYCEEEII4XakABJCCCGE2/n/AfrpNucPupazAAAAAElFTkSuQmCC",
|
||
"text/plain": [
|
||
"<Figure size 640x480 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"adj_close.view(sim=price_sim)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Функция для автоматизации вычисления целевой переменной Y на основе вектора признаков X**"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 22,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"def fuzzy_pred(row):\n",
|
||
" price_sim.input[\"silver_price\"] = row[\"SF_Price\"]\n",
|
||
" price_sim.input[\"oil_price\"] = row[\"OF_Price\"]\n",
|
||
" price_sim.compute()\n",
|
||
" return price_sim.output[\"adj_close\"]"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Создадим выборки**"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 23,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Размер обучающей выборки: 1030\n",
|
||
"Размер контрольной выборки: 344\n",
|
||
"Размер тестовой выборки: 344\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"import seaborn as sns\n",
|
||
"from sklearn.model_selection import train_test_split\n",
|
||
"from imblearn.over_sampling import RandomOverSampler\n",
|
||
"df=pd.read_csv(\"..//static//csv//FINAL_USO.csv\")\n",
|
||
"# Разделение данных на обучающую и временную выборки\n",
|
||
"train_df, temp_df = train_test_split(df, test_size=0.4, random_state=42)\n",
|
||
"\n",
|
||
"# Разделение остатка на контрольную и тестовую выборки\n",
|
||
"val_df, test_df = train_test_split(temp_df, test_size=0.5, random_state=42)\n",
|
||
"\n",
|
||
"# Проверка размеров выборок\n",
|
||
"print(\"Размер обучающей выборки:\", len(train_df))\n",
|
||
"print(\"Размер контрольной выборки:\", len(val_df))\n",
|
||
"print(\"Размер тестовой выборки:\", len(test_df))\n",
|
||
"\n",
|
||
"# Сохранение выборок в файлы\n",
|
||
"train_df.to_csv(\"..//static//csv//train_data.csv\", index=False)\n",
|
||
"val_df.to_csv(\"..//static//csv//val_data.csv\", index=False)\n",
|
||
"test_df.to_csv(\"..//static//csv//test_data.csv\", index=False)\n",
|
||
"\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"#### Тестирование нечеткой системы на обучающей выборке"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 24,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"application/vnd.microsoft.datawrangler.viewer.v0+json": {
|
||
"columns": [
|
||
{
|
||
"name": "index",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "Adj Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "Adj_Pred",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
}
|
||
],
|
||
"conversionMethod": "pd.DataFrame",
|
||
"ref": "395d9ad8-c2bc-4e96-abd7-aef80b9b35aa",
|
||
"rows": [
|
||
[
|
||
"0",
|
||
"168.0",
|
||
"130.5622120836427"
|
||
],
|
||
[
|
||
"1",
|
||
"112.57",
|
||
"114.71860410116727"
|
||
],
|
||
[
|
||
"2",
|
||
"152.619995",
|
||
"128.22795726015912"
|
||
],
|
||
[
|
||
"3",
|
||
"114.099998",
|
||
"113.72211141602136"
|
||
],
|
||
[
|
||
"4",
|
||
"122.370003",
|
||
"114.11963744183743"
|
||
],
|
||
[
|
||
"5",
|
||
"110.739998",
|
||
"118.65233525899755"
|
||
],
|
||
[
|
||
"6",
|
||
"120.339996",
|
||
"114.2920790567826"
|
||
],
|
||
[
|
||
"7",
|
||
"108.529999",
|
||
"117.6578355279135"
|
||
],
|
||
[
|
||
"8",
|
||
"155.990005",
|
||
"119.31665642030298"
|
||
],
|
||
[
|
||
"9",
|
||
"152.619995",
|
||
"122.122485315354"
|
||
],
|
||
[
|
||
"10",
|
||
"114.690002",
|
||
"113.14420001833811"
|
||
],
|
||
[
|
||
"11",
|
||
"116.720001",
|
||
"119.85874650696019"
|
||
],
|
||
[
|
||
"12",
|
||
"133.919998",
|
||
"117.72446713035714"
|
||
],
|
||
[
|
||
"13",
|
||
"124.389999",
|
||
"114.49943272887351"
|
||
],
|
||
[
|
||
"14",
|
||
"124.230003",
|
||
"117.6826810238513"
|
||
]
|
||
],
|
||
"shape": {
|
||
"columns": 2,
|
||
"rows": 15
|
||
}
|
||
},
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Adj Close</th>\n",
|
||
" <th>Adj_Pred</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>168.000000</td>\n",
|
||
" <td>130.562212</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>112.570000</td>\n",
|
||
" <td>114.718604</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>152.619995</td>\n",
|
||
" <td>128.227957</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>114.099998</td>\n",
|
||
" <td>113.722111</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>122.370003</td>\n",
|
||
" <td>114.119637</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>110.739998</td>\n",
|
||
" <td>118.652335</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>120.339996</td>\n",
|
||
" <td>114.292079</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>108.529999</td>\n",
|
||
" <td>117.657836</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>155.990005</td>\n",
|
||
" <td>119.316656</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>152.619995</td>\n",
|
||
" <td>122.122485</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>10</th>\n",
|
||
" <td>114.690002</td>\n",
|
||
" <td>113.144200</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>11</th>\n",
|
||
" <td>116.720001</td>\n",
|
||
" <td>119.858747</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>12</th>\n",
|
||
" <td>133.919998</td>\n",
|
||
" <td>117.724467</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>13</th>\n",
|
||
" <td>124.389999</td>\n",
|
||
" <td>114.499433</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>14</th>\n",
|
||
" <td>124.230003</td>\n",
|
||
" <td>117.682681</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Adj Close Adj_Pred\n",
|
||
"0 168.000000 130.562212\n",
|
||
"1 112.570000 114.718604\n",
|
||
"2 152.619995 128.227957\n",
|
||
"3 114.099998 113.722111\n",
|
||
"4 122.370003 114.119637\n",
|
||
"5 110.739998 118.652335\n",
|
||
"6 120.339996 114.292079\n",
|
||
"7 108.529999 117.657836\n",
|
||
"8 155.990005 119.316656\n",
|
||
"9 152.619995 122.122485\n",
|
||
"10 114.690002 113.144200\n",
|
||
"11 116.720001 119.858747\n",
|
||
"12 133.919998 117.724467\n",
|
||
"13 124.389999 114.499433\n",
|
||
"14 124.230003 117.682681"
|
||
]
|
||
},
|
||
"execution_count": 24,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"train_df = pd.read_csv(\"..//static//csv//train_data.csv\")\n",
|
||
"\n",
|
||
"result_train = train_df.copy()\n",
|
||
"\n",
|
||
"\n",
|
||
"result_train[\"Adj_Pred\"] = result_train.apply(fuzzy_pred, axis=1)\n",
|
||
"selected_cm=result_train[['Adj Close','Adj_Pred']]\n",
|
||
"selected_cm.head(15)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"#### Тестирование нечеткой системы на тестовой выборке"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 25,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"application/vnd.microsoft.datawrangler.viewer.v0+json": {
|
||
"columns": [
|
||
{
|
||
"name": "index",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "Adj Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "Adj_Pred",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
}
|
||
],
|
||
"conversionMethod": "pd.DataFrame",
|
||
"ref": "70457667-97bb-4889-ae06-9d87735e8bc3",
|
||
"rows": [
|
||
[
|
||
"0",
|
||
"160.53999299999995",
|
||
"126.99265205201864"
|
||
],
|
||
[
|
||
"1",
|
||
"121.610001",
|
||
"120.45495123466824"
|
||
],
|
||
[
|
||
"2",
|
||
"126.160004",
|
||
"116.32803751504055"
|
||
],
|
||
[
|
||
"3",
|
||
"160.990005",
|
||
"137.57239627996805"
|
||
],
|
||
[
|
||
"4",
|
||
"173.610001",
|
||
"166.75034873228836"
|
||
],
|
||
[
|
||
"5",
|
||
"118.970001",
|
||
"115.56082059594011"
|
||
],
|
||
[
|
||
"6",
|
||
"126.68",
|
||
"116.50064031098007"
|
||
],
|
||
[
|
||
"7",
|
||
"117.519997",
|
||
"114.24514943448392"
|
||
],
|
||
[
|
||
"8",
|
||
"126.730003",
|
||
"113.75929069349351"
|
||
],
|
||
[
|
||
"9",
|
||
"120.309998",
|
||
"114.21895196778395"
|
||
],
|
||
[
|
||
"10",
|
||
"114.419998",
|
||
"113.38416250646499"
|
||
],
|
||
[
|
||
"11",
|
||
"124.540001",
|
||
"113.76979939419816"
|
||
],
|
||
[
|
||
"12",
|
||
"115.43",
|
||
"117.66191604712311"
|
||
],
|
||
[
|
||
"13",
|
||
"118.220001",
|
||
"113.78325648362738"
|
||
],
|
||
[
|
||
"14",
|
||
"121.050003",
|
||
"120.40893556665435"
|
||
],
|
||
[
|
||
"15",
|
||
"106.220001",
|
||
"115.89755210665803"
|
||
],
|
||
[
|
||
"16",
|
||
"109.139999",
|
||
"118.87603802886166"
|
||
],
|
||
[
|
||
"17",
|
||
"112.239998",
|
||
"114.7779968128804"
|
||
],
|
||
[
|
||
"18",
|
||
"122.879997",
|
||
"116.58487451170102"
|
||
],
|
||
[
|
||
"19",
|
||
"117.290001",
|
||
"119.73028140033199"
|
||
],
|
||
[
|
||
"20",
|
||
"127.400002",
|
||
"114.64853143026725"
|
||
],
|
||
[
|
||
"21",
|
||
"171.020004",
|
||
"134.4902389227914"
|
||
],
|
||
[
|
||
"22",
|
||
"118.120003",
|
||
"115.5094419567893"
|
||
],
|
||
[
|
||
"23",
|
||
"119.43",
|
||
"115.42212169942749"
|
||
],
|
||
[
|
||
"24",
|
||
"115.800003",
|
||
"113.63460663693257"
|
||
]
|
||
],
|
||
"shape": {
|
||
"columns": 2,
|
||
"rows": 25
|
||
}
|
||
},
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Adj Close</th>\n",
|
||
" <th>Adj_Pred</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>160.539993</td>\n",
|
||
" <td>126.992652</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>121.610001</td>\n",
|
||
" <td>120.454951</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>126.160004</td>\n",
|
||
" <td>116.328038</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>160.990005</td>\n",
|
||
" <td>137.572396</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>173.610001</td>\n",
|
||
" <td>166.750349</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>118.970001</td>\n",
|
||
" <td>115.560821</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>126.680000</td>\n",
|
||
" <td>116.500640</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>117.519997</td>\n",
|
||
" <td>114.245149</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>126.730003</td>\n",
|
||
" <td>113.759291</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>120.309998</td>\n",
|
||
" <td>114.218952</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>10</th>\n",
|
||
" <td>114.419998</td>\n",
|
||
" <td>113.384163</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>11</th>\n",
|
||
" <td>124.540001</td>\n",
|
||
" <td>113.769799</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>12</th>\n",
|
||
" <td>115.430000</td>\n",
|
||
" <td>117.661916</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>13</th>\n",
|
||
" <td>118.220001</td>\n",
|
||
" <td>113.783256</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>14</th>\n",
|
||
" <td>121.050003</td>\n",
|
||
" <td>120.408936</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>15</th>\n",
|
||
" <td>106.220001</td>\n",
|
||
" <td>115.897552</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>16</th>\n",
|
||
" <td>109.139999</td>\n",
|
||
" <td>118.876038</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>17</th>\n",
|
||
" <td>112.239998</td>\n",
|
||
" <td>114.777997</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>18</th>\n",
|
||
" <td>122.879997</td>\n",
|
||
" <td>116.584875</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>19</th>\n",
|
||
" <td>117.290001</td>\n",
|
||
" <td>119.730281</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>20</th>\n",
|
||
" <td>127.400002</td>\n",
|
||
" <td>114.648531</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>21</th>\n",
|
||
" <td>171.020004</td>\n",
|
||
" <td>134.490239</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>22</th>\n",
|
||
" <td>118.120003</td>\n",
|
||
" <td>115.509442</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>23</th>\n",
|
||
" <td>119.430000</td>\n",
|
||
" <td>115.422122</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>24</th>\n",
|
||
" <td>115.800003</td>\n",
|
||
" <td>113.634607</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Adj Close Adj_Pred\n",
|
||
"0 160.539993 126.992652\n",
|
||
"1 121.610001 120.454951\n",
|
||
"2 126.160004 116.328038\n",
|
||
"3 160.990005 137.572396\n",
|
||
"4 173.610001 166.750349\n",
|
||
"5 118.970001 115.560821\n",
|
||
"6 126.680000 116.500640\n",
|
||
"7 117.519997 114.245149\n",
|
||
"8 126.730003 113.759291\n",
|
||
"9 120.309998 114.218952\n",
|
||
"10 114.419998 113.384163\n",
|
||
"11 124.540001 113.769799\n",
|
||
"12 115.430000 117.661916\n",
|
||
"13 118.220001 113.783256\n",
|
||
"14 121.050003 120.408936\n",
|
||
"15 106.220001 115.897552\n",
|
||
"16 109.139999 118.876038\n",
|
||
"17 112.239998 114.777997\n",
|
||
"18 122.879997 116.584875\n",
|
||
"19 117.290001 119.730281\n",
|
||
"20 127.400002 114.648531\n",
|
||
"21 171.020004 134.490239\n",
|
||
"22 118.120003 115.509442\n",
|
||
"23 119.430000 115.422122\n",
|
||
"24 115.800003 113.634607"
|
||
]
|
||
},
|
||
"execution_count": 25,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"test_df=pd.read_csv(\"..//static//csv//test_data.csv\")\n",
|
||
"result_test = test_df.copy()\n",
|
||
"\n",
|
||
"result_test[\"Adj_Pred\"] = result_test.apply(fuzzy_pred, axis=1)\n",
|
||
"\n",
|
||
"selected_cm=result_test[['Adj Close','Adj_Pred']]\n",
|
||
"selected_cm.head(25)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"#### Тестирование нечёткой системы на контрольной выборке"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 26,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"application/vnd.microsoft.datawrangler.viewer.v0+json": {
|
||
"columns": [
|
||
{
|
||
"name": "index",
|
||
"rawType": "int64",
|
||
"type": "integer"
|
||
},
|
||
{
|
||
"name": "Adj Close",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
},
|
||
{
|
||
"name": "Adj_Pred",
|
||
"rawType": "float64",
|
||
"type": "float"
|
||
}
|
||
],
|
||
"conversionMethod": "pd.DataFrame",
|
||
"ref": "aa39a7e9-0210-4408-b56c-0e86186d7f71",
|
||
"rows": [
|
||
[
|
||
"0",
|
||
"117.589996",
|
||
"116.4285421361288"
|
||
],
|
||
[
|
||
"1",
|
||
"121.650002",
|
||
"117.40539503151582"
|
||
],
|
||
[
|
||
"2",
|
||
"166.339996",
|
||
"139.32357949098417"
|
||
],
|
||
[
|
||
"3",
|
||
"116.309998",
|
||
"113.38397280694028"
|
||
],
|
||
[
|
||
"4",
|
||
"115.199997",
|
||
"120.43925933442551"
|
||
],
|
||
[
|
||
"5",
|
||
"126.940002",
|
||
"113.26607717555845"
|
||
],
|
||
[
|
||
"6",
|
||
"127.480003",
|
||
"115.50212271744391"
|
||
],
|
||
[
|
||
"7",
|
||
"120.779999",
|
||
"118.49342950573612"
|
||
],
|
||
[
|
||
"8",
|
||
"151.619995",
|
||
"128.0419181152574"
|
||
],
|
||
[
|
||
"9",
|
||
"118.290001",
|
||
"115.09643869970799"
|
||
],
|
||
[
|
||
"10",
|
||
"122.860001",
|
||
"114.2494028240732"
|
||
],
|
||
[
|
||
"11",
|
||
"118.360001",
|
||
"113.15082461681098"
|
||
],
|
||
[
|
||
"12",
|
||
"123.32",
|
||
"115.11705124534586"
|
||
],
|
||
[
|
||
"13",
|
||
"120.650002",
|
||
"118.46798544233826"
|
||
],
|
||
[
|
||
"14",
|
||
"161.509995",
|
||
"131.9781543639097"
|
||
],
|
||
[
|
||
"15",
|
||
"120.589996",
|
||
"118.54123325246917"
|
||
],
|
||
[
|
||
"16",
|
||
"120.959999",
|
||
"115.59520177029755"
|
||
],
|
||
[
|
||
"17",
|
||
"115.989998",
|
||
"113.31571770449513"
|
||
],
|
||
[
|
||
"18",
|
||
"120.989998",
|
||
"115.77483561646766"
|
||
],
|
||
[
|
||
"19",
|
||
"168.78999299999995",
|
||
"166.73290406408321"
|
||
],
|
||
[
|
||
"20",
|
||
"114.290001",
|
||
"119.82826231852792"
|
||
],
|
||
[
|
||
"21",
|
||
"114.209999",
|
||
"119.66965635658467"
|
||
],
|
||
[
|
||
"22",
|
||
"115.050003",
|
||
"112.65735563578419"
|
||
],
|
||
[
|
||
"23",
|
||
"118.860001",
|
||
"114.26824965045321"
|
||
],
|
||
[
|
||
"24",
|
||
"120.050003",
|
||
"115.00997512321632"
|
||
]
|
||
],
|
||
"shape": {
|
||
"columns": 2,
|
||
"rows": 25
|
||
}
|
||
},
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Adj Close</th>\n",
|
||
" <th>Adj_Pred</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>117.589996</td>\n",
|
||
" <td>116.428542</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>121.650002</td>\n",
|
||
" <td>117.405395</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>166.339996</td>\n",
|
||
" <td>139.323579</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>116.309998</td>\n",
|
||
" <td>113.383973</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>115.199997</td>\n",
|
||
" <td>120.439259</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>126.940002</td>\n",
|
||
" <td>113.266077</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>127.480003</td>\n",
|
||
" <td>115.502123</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>120.779999</td>\n",
|
||
" <td>118.493430</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>151.619995</td>\n",
|
||
" <td>128.041918</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>118.290001</td>\n",
|
||
" <td>115.096439</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>10</th>\n",
|
||
" <td>122.860001</td>\n",
|
||
" <td>114.249403</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>11</th>\n",
|
||
" <td>118.360001</td>\n",
|
||
" <td>113.150825</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>12</th>\n",
|
||
" <td>123.320000</td>\n",
|
||
" <td>115.117051</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>13</th>\n",
|
||
" <td>120.650002</td>\n",
|
||
" <td>118.467985</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>14</th>\n",
|
||
" <td>161.509995</td>\n",
|
||
" <td>131.978154</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>15</th>\n",
|
||
" <td>120.589996</td>\n",
|
||
" <td>118.541233</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>16</th>\n",
|
||
" <td>120.959999</td>\n",
|
||
" <td>115.595202</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>17</th>\n",
|
||
" <td>115.989998</td>\n",
|
||
" <td>113.315718</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>18</th>\n",
|
||
" <td>120.989998</td>\n",
|
||
" <td>115.774836</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>19</th>\n",
|
||
" <td>168.789993</td>\n",
|
||
" <td>166.732904</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>20</th>\n",
|
||
" <td>114.290001</td>\n",
|
||
" <td>119.828262</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>21</th>\n",
|
||
" <td>114.209999</td>\n",
|
||
" <td>119.669656</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>22</th>\n",
|
||
" <td>115.050003</td>\n",
|
||
" <td>112.657356</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>23</th>\n",
|
||
" <td>118.860001</td>\n",
|
||
" <td>114.268250</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>24</th>\n",
|
||
" <td>120.050003</td>\n",
|
||
" <td>115.009975</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Adj Close Adj_Pred\n",
|
||
"0 117.589996 116.428542\n",
|
||
"1 121.650002 117.405395\n",
|
||
"2 166.339996 139.323579\n",
|
||
"3 116.309998 113.383973\n",
|
||
"4 115.199997 120.439259\n",
|
||
"5 126.940002 113.266077\n",
|
||
"6 127.480003 115.502123\n",
|
||
"7 120.779999 118.493430\n",
|
||
"8 151.619995 128.041918\n",
|
||
"9 118.290001 115.096439\n",
|
||
"10 122.860001 114.249403\n",
|
||
"11 118.360001 113.150825\n",
|
||
"12 123.320000 115.117051\n",
|
||
"13 120.650002 118.467985\n",
|
||
"14 161.509995 131.978154\n",
|
||
"15 120.589996 118.541233\n",
|
||
"16 120.959999 115.595202\n",
|
||
"17 115.989998 113.315718\n",
|
||
"18 120.989998 115.774836\n",
|
||
"19 168.789993 166.732904\n",
|
||
"20 114.290001 119.828262\n",
|
||
"21 114.209999 119.669656\n",
|
||
"22 115.050003 112.657356\n",
|
||
"23 118.860001 114.268250\n",
|
||
"24 120.050003 115.009975"
|
||
]
|
||
},
|
||
"execution_count": 26,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"val_df=pd.read_csv(\"..//static//csv//val_data.csv\")\n",
|
||
"result_val = val_df.copy()\n",
|
||
"\n",
|
||
"result_val[\"Adj_Pred\"] = result_val.apply(fuzzy_pred, axis=1)\n",
|
||
"\n",
|
||
"selected_cm=result_val[['Adj Close','Adj_Pred']]\n",
|
||
"selected_cm.head(25)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"#### Оценка результатов на основе метрик для задачи регрессии"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 27,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/plain": [
|
||
"{'RMSE_train': 14.063806361503557,\n",
|
||
" 'RMSE_test': 13.63382917388284,\n",
|
||
" 'RMAE_test': 3.152710529049624,\n",
|
||
" 'R2_test': 0.35443568923237845}"
|
||
]
|
||
},
|
||
"execution_count": 27,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"import math\n",
|
||
"from sklearn import metrics\n",
|
||
"\n",
|
||
"\n",
|
||
"rmetrics = {}\n",
|
||
"rmetrics[\"RMSE_train\"] = math.sqrt(\n",
|
||
" metrics.mean_squared_error(result_train[\"Adj Close\"], result_train[\"Adj_Pred\"])\n",
|
||
")\n",
|
||
"rmetrics[\"RMSE_test\"] = math.sqrt(\n",
|
||
" metrics.mean_squared_error(result_test[\"Adj Close\"], result_test[\"Adj_Pred\"])\n",
|
||
")\n",
|
||
"rmetrics[\"RMAE_test\"] = math.sqrt(\n",
|
||
" metrics.mean_absolute_error(result_test[\"Adj Close\"], result_test[\"Adj_Pred\"])\n",
|
||
")\n",
|
||
"rmetrics[\"R2_test\"] = metrics.r2_score(\n",
|
||
" result_test[\"Adj Close\"], result_test[\"Adj_Pred\"]\n",
|
||
")\n",
|
||
"\n",
|
||
"rmetrics"
|
||
]
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "Python 3",
|
||
"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.6"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 2
|
||
}
|