Train_SimpleDataPrice+EMA 2.ipynb 102 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using TensorFlow backend.\n",
      "/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:526: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_qint8 = np.dtype([(\"qint8\", np.int8, 1)])\n",
      "/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:527: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_quint8 = np.dtype([(\"quint8\", np.uint8, 1)])\n",
      "/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:528: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_qint16 = np.dtype([(\"qint16\", np.int16, 1)])\n",
      "/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:529: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_quint16 = np.dtype([(\"quint16\", np.uint16, 1)])\n",
      "/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:530: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_qint32 = np.dtype([(\"qint32\", np.int32, 1)])\n",
      "/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:535: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  np_resource = np.dtype([(\"resource\", np.ubyte, 1)])\n"
     ]
    }
   ],
   "source": [
    "from keras.models import Model, Sequential\n",
    "from keras.layers import Input, Dense, LSTM, Bidirectional\n",
    "from keras.callbacks import EarlyStopping, ModelCheckpoint\n",
    "from keras import backend as K\n",
    "import matplotlib.pyplot as plt\n",
    "from keras.layers.core import Dense, Activation, Dropout\n",
    "import pandas as pd\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "train = pd.read_csv('/Users/yangyoonji/Documents/2020_2학기/캡스톤디자인/data/scaled/train_scaled.csv')\n",
    "test = pd.read_csv('/Users/yangyoonji/Documents/2020_2학기/캡스톤디자인/data/recent_test/recent_test_scaled.csv')\n",
    "validation = pd.read_csv('/Users/yangyoonji/Documents/2020_2학기/캡스톤디자인/data/scaled/validation_scaled.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "ename": "KeyError",
     "evalue": "'Unnamed: 0'",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mKeyError\u001b[0m                                  Traceback (most recent call last)",
      "\u001b[0;32m~/anaconda3/lib/python3.7/site-packages/pandas/core/indexes/base.py\u001b[0m in \u001b[0;36mget_loc\u001b[0;34m(self, key, method, tolerance)\u001b[0m\n\u001b[1;32m   2656\u001b[0m             \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2657\u001b[0;31m                 \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   2658\u001b[0m             \u001b[0;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;31mKeyError\u001b[0m: 'Unnamed: 0'",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[0;31mKeyError\u001b[0m                                  Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-7-92d7078de5a4>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mdel\u001b[0m \u001b[0mtrain\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Unnamed: 0'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      2\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mtest\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Unnamed: 0'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mvalidation\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Unnamed: 0'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m__delitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m   3313\u001b[0m             \u001b[0;31m# there was no match, this call should raise the appropriate\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   3314\u001b[0m             \u001b[0;31m# exception:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 3315\u001b[0;31m             \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_data\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdelete\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   3316\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   3317\u001b[0m         \u001b[0;31m# delete from the caches\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/anaconda3/lib/python3.7/site-packages/pandas/core/internals/managers.py\u001b[0m in \u001b[0;36mdelete\u001b[0;34m(self, item)\u001b[0m\n\u001b[1;32m    983\u001b[0m         \u001b[0mDelete\u001b[0m \u001b[0mselected\u001b[0m \u001b[0mitem\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mitems\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mnon\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0munique\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32min\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mplace\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    984\u001b[0m         \"\"\"\n\u001b[0;32m--> 985\u001b[0;31m         \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitems\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    986\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    987\u001b[0m         \u001b[0mis_deleted\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mzeros\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mshape\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdtype\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbool_\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/anaconda3/lib/python3.7/site-packages/pandas/core/indexes/base.py\u001b[0m in \u001b[0;36mget_loc\u001b[0;34m(self, key, method, tolerance)\u001b[0m\n\u001b[1;32m   2657\u001b[0m                 \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2658\u001b[0m             \u001b[0;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2659\u001b[0;31m                 \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_maybe_cast_indexer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   2660\u001b[0m         \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_indexer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmethod\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmethod\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtolerance\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtolerance\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2661\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mindexer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndim\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mindexer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msize\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
      "\u001b[0;31mKeyError\u001b[0m: 'Unnamed: 0'"
     ]
    }
   ],
   "source": [
    "del train['Unnamed: 0']\n",
    "del test['Unnamed: 0']\n",
    "del validation['Unnamed: 0']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "del train_EMA['Unnamed: 0']\n",
    "del test_EMA['Unnamed: 0']\n",
    "del val_EMA['Unnamed: 0']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "train_EMA = pd.read_csv('/Users/yangyoonji/Documents/2020_2학기/캡스톤디자인/data/MA_scaled/close/exp/train_EMA_scaled.csv')\n",
    "test_EMA = pd.read_csv('/Users/yangyoonji/Documents/2020_2학기/캡스톤디자인/data/MA_scaled/close/exp/test_EMA_scaled.csv')\n",
    "val_EMA = pd.read_csv('/Users/yangyoonji/Documents/2020_2학기/캡스톤디자인/data/MA_scaled/close/exp/val_EMA_scaled.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "train = pd.concat([train, train_EMA], axis = 1)\n",
    "test = pd.concat([test, test_EMA],axis = 1)\n",
    "validation = pd.concat([validation,val_EMA], axis = 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "checking if any null values are present in train\n",
      " close    0\n",
      "open     0\n",
      "high     0\n",
      "low      0\n",
      "vol      0\n",
      "5        0\n",
      "10       0\n",
      "20       0\n",
      "60       0\n",
      "120      0\n",
      "dtype: int64\n",
      "checking if any null values are present in test\n",
      " close    0\n",
      "open     0\n",
      "high     0\n",
      "low      0\n",
      "vol      0\n",
      "5        0\n",
      "10       0\n",
      "20       0\n",
      "60       0\n",
      "120      0\n",
      "dtype: int64\n",
      "checking if any null values are present in validation\n",
      " close    0\n",
      "open     0\n",
      "high     0\n",
      "low      0\n",
      "vol      0\n",
      "5        0\n",
      "10       0\n",
      "20       0\n",
      "60       0\n",
      "120      0\n",
      "dtype: int64\n"
     ]
    }
   ],
   "source": [
    "# NULL value 없나 확인해보기 (지수이동평균의 경우는 결측치가 없다)\n",
    "print(\"checking if any null values are present in train\\n\", train.isna().sum())\n",
    "print(\"checking if any null values are present in test\\n\", test.isna().sum())\n",
    "print(\"checking if any null values are present in validation\\n\", validation.isna().sum())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "def make_dataset(data, label, window_size = 20):\n",
    "    feature_list = []\n",
    "    label_list = []\n",
    "    for i in range(len(data)-window_size):\n",
    "        feature_list.append(np.array(data.iloc[i:i+window_size]))\n",
    "        label_list.append(np.array(label.iloc[i+window_size]))\n",
    "    return np.array(feature_list), np.array(label_list)    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "# feature , label 분리\n",
    "feature_cols = ['open','high','low','vol','5','10','20','60','120']\n",
    "label_cols = ['close']\n",
    "\n",
    "##----train_data----##\n",
    "train_feature = train[feature_cols]\n",
    "train_label = train[label_cols]\n",
    "train_feature, train_label = make_dataset(train_feature,train_label,20)\n",
    "\n",
    "##----test_data----##\n",
    "test_feature = test[feature_cols]\n",
    "test_label = test[label_cols]\n",
    "test_feature, test_label = make_dataset(test_feature,test_label,20)\n",
    "\n",
    "##----validation_data----##\n",
    "validation_feature = validation[feature_cols]\n",
    "validation_label = validation[label_cols]\n",
    "validation_feature, validation_label = make_dataset(validation_feature,validation_label,20)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "X_train, y_train, X_val, y_val = train_feature, train_label, validation_feature, validation_label\n",
    "X_test, y_test = test_feature, test_label"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(191, 20, 9)\n",
      "(191, 1)\n"
     ]
    }
   ],
   "source": [
    "print(X_test.shape)\n",
    "print(y_test.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "WARNING:tensorflow:From /Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/framework/op_def_library.py:263: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n",
      "Instructions for updating:\n",
      "Colocations handled automatically by placer.\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "lstm_1 (LSTM)                (None, 20, 64)            18944     \n",
      "_________________________________________________________________\n",
      "lstm_2 (LSTM)                (None, 50)                23000     \n",
      "_________________________________________________________________\n",
      "dense_1 (Dense)              (None, 1)                 51        \n",
      "=================================================================\n",
      "Total params: 41,995\n",
      "Trainable params: 41,995\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "# keras 활용한 LSTM 모델 생성\n",
    "model = Sequential()\n",
    "##----Input Layer----##\n",
    "model.add(LSTM(64, return_sequences=True, input_shape=(20,9)))\n",
    "##----Hidden Layer----##\n",
    "model.add(LSTM(50, return_sequences=False))\n",
    "model.add(Dense(1, activation='linear'))\n",
    "##----Compile Model----##\n",
    "model.compile(loss='mse',optimizer='adam')\n",
    "model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "WARNING:tensorflow:From /Users/yangyoonji/anaconda3/lib/python3.7/site-packages/tensorflow/python/ops/math_ops.py:3066: to_int32 (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n",
      "Instructions for updating:\n",
      "Use tf.cast instead.\n",
      "Train on 3444 samples, validate on 226 samples\n",
      "Epoch 1/100\n",
      "3444/3444 [==============================] - 51s 15ms/step - loss: 0.0022 - val_loss: 0.0137\n",
      "Epoch 2/100\n",
      "3444/3444 [==============================] - 50s 15ms/step - loss: 6.1135e-04 - val_loss: 0.0088\n",
      "Epoch 3/100\n",
      "3444/3444 [==============================] - 47s 14ms/step - loss: 4.1736e-04 - val_loss: 0.0066\n",
      "Epoch 4/100\n",
      "3444/3444 [==============================] - 49s 14ms/step - loss: 3.8157e-04 - val_loss: 0.0053\n",
      "Epoch 5/100\n",
      "3444/3444 [==============================] - 52s 15ms/step - loss: 2.9227e-04 - val_loss: 0.0044\n",
      "Epoch 6/100\n",
      "3444/3444 [==============================] - 50s 15ms/step - loss: 2.6629e-04 - val_loss: 0.0038\n",
      "Epoch 7/100\n",
      "3444/3444 [==============================] - 52s 15ms/step - loss: 2.6588e-04 - val_loss: 0.0038\n",
      "Epoch 8/100\n",
      "3444/3444 [==============================] - 47s 14ms/step - loss: 2.6004e-04 - val_loss: 0.0037\n",
      "Epoch 9/100\n",
      "3444/3444 [==============================] - 50s 15ms/step - loss: 2.5530e-04 - val_loss: 0.0036\n",
      "Epoch 10/100\n",
      "3444/3444 [==============================] - 47s 14ms/step - loss: 2.6183e-04 - val_loss: 0.0038\n"
     ]
    }
   ],
   "source": [
    "early_stopping = EarlyStopping() \n",
    "hist = model.fit(X_train, y_train, validation_data=(X_val, y_val),batch_size=5, epochs=100,callbacks=[early_stopping])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "191/191 [==============================] - 1s 3ms/step\n"
     ]
    }
   ],
   "source": [
    "score = model.evaluate(X_test,y_test,batch_size=5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.002467480193121427\n"
     ]
    }
   ],
   "source": [
    "print(score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "predict = model.predict(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x648 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(12,9))\n",
    "plt.plot(y_test, label='actual')\n",
    "plt.plot(predict, label=\"prediction\")\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "actual = pd.DataFrame(y_test,columns=[\"actual\"])\n",
    "prediction = pd.DataFrame(predict,columns=[\"prediction\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "result = pd.concat([actual, prediction],axis =1)\n",
    "result['investing'] = '-'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "from tqdm import tqdm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/190 [00:00<?, ?it/s]/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/ipykernel_launcher.py:6: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame\n",
      "\n",
      "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
      "  \n",
      "  1%|          | 2/190 [00:00<00:13, 13.78it/s]/Users/yangyoonji/anaconda3/lib/python3.7/site-packages/ipykernel_launcher.py:8: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame\n",
      "\n",
      "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
      "  \n",
      "100%|██████████| 190/190 [00:12<00:00, 15.51it/s]\n"
     ]
    }
   ],
   "source": [
    "for i in tqdm(range(1,len(result))):\n",
    "    \n",
    "    real = result['actual'][i]-result['actual'][i-1]\n",
    "    pred = result['prediction'][i]-result['actual'][i-1]\n",
    "    if real * pred <= 0:\n",
    "        result['investing'][i] = 'fail'\n",
    "    else:\n",
    "        result['investing'][i] = 'success'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "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>actual</th>\n",
       "      <th>prediction</th>\n",
       "      <th>investing</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.691248</td>\n",
       "      <td>0.690265</td>\n",
       "      <td>-</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.736622</td>\n",
       "      <td>0.641158</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.747421</td>\n",
       "      <td>0.715432</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.816973</td>\n",
       "      <td>0.735599</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.797308</td>\n",
       "      <td>0.778129</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.781431</td>\n",
       "      <td>0.770791</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.805932</td>\n",
       "      <td>0.739125</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.824146</td>\n",
       "      <td>0.796034</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.819230</td>\n",
       "      <td>0.785213</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.835993</td>\n",
       "      <td>0.811944</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.833978</td>\n",
       "      <td>0.794492</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>0.793520</td>\n",
       "      <td>0.810953</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>0.798275</td>\n",
       "      <td>0.768841</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>0.784736</td>\n",
       "      <td>0.773485</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>0.750645</td>\n",
       "      <td>0.774262</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>0.658769</td>\n",
       "      <td>0.718268</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>0.684720</td>\n",
       "      <td>0.639693</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>0.650064</td>\n",
       "      <td>0.652056</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>0.627095</td>\n",
       "      <td>0.624257</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>0.553997</td>\n",
       "      <td>0.620339</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>0.572937</td>\n",
       "      <td>0.539277</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>0.582527</td>\n",
       "      <td>0.550774</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>0.635477</td>\n",
       "      <td>0.599056</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>0.661670</td>\n",
       "      <td>0.580054</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>0.611057</td>\n",
       "      <td>0.645882</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>0.514426</td>\n",
       "      <td>0.585958</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>0.526999</td>\n",
       "      <td>0.491288</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>0.465264</td>\n",
       "      <td>0.500150</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>0.389587</td>\n",
       "      <td>0.476872</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>0.333414</td>\n",
       "      <td>0.382408</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>161</th>\n",
       "      <td>0.882818</td>\n",
       "      <td>0.937508</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>162</th>\n",
       "      <td>0.889426</td>\n",
       "      <td>0.871499</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>163</th>\n",
       "      <td>0.831721</td>\n",
       "      <td>0.867197</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>164</th>\n",
       "      <td>0.840506</td>\n",
       "      <td>0.829921</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>165</th>\n",
       "      <td>0.868391</td>\n",
       "      <td>0.838647</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>166</th>\n",
       "      <td>0.887814</td>\n",
       "      <td>0.860306</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>167</th>\n",
       "      <td>0.920616</td>\n",
       "      <td>0.885473</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>168</th>\n",
       "      <td>0.928191</td>\n",
       "      <td>0.890973</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>169</th>\n",
       "      <td>0.951564</td>\n",
       "      <td>0.922606</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>170</th>\n",
       "      <td>0.952531</td>\n",
       "      <td>0.905984</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>171</th>\n",
       "      <td>0.966070</td>\n",
       "      <td>0.958856</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>172</th>\n",
       "      <td>0.969536</td>\n",
       "      <td>0.937659</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>173</th>\n",
       "      <td>0.945277</td>\n",
       "      <td>0.955349</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>174</th>\n",
       "      <td>0.923920</td>\n",
       "      <td>0.930931</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>175</th>\n",
       "      <td>0.907076</td>\n",
       "      <td>0.901971</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>176</th>\n",
       "      <td>0.913201</td>\n",
       "      <td>0.899047</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>177</th>\n",
       "      <td>0.930287</td>\n",
       "      <td>0.906905</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>178</th>\n",
       "      <td>0.938749</td>\n",
       "      <td>0.890550</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>179</th>\n",
       "      <td>0.922711</td>\n",
       "      <td>0.931942</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>180</th>\n",
       "      <td>0.930932</td>\n",
       "      <td>0.885219</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>181</th>\n",
       "      <td>0.920777</td>\n",
       "      <td>0.919069</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>182</th>\n",
       "      <td>0.906834</td>\n",
       "      <td>0.914604</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>183</th>\n",
       "      <td>0.917876</td>\n",
       "      <td>0.882138</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>184</th>\n",
       "      <td>0.891844</td>\n",
       "      <td>0.892312</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>185</th>\n",
       "      <td>0.824629</td>\n",
       "      <td>0.857188</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>186</th>\n",
       "      <td>0.859687</td>\n",
       "      <td>0.834307</td>\n",
       "      <td>success</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>187</th>\n",
       "      <td>0.909010</td>\n",
       "      <td>0.827400</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>188</th>\n",
       "      <td>0.923195</td>\n",
       "      <td>0.899352</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>189</th>\n",
       "      <td>0.985090</td>\n",
       "      <td>0.906775</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>190</th>\n",
       "      <td>0.989845</td>\n",
       "      <td>0.945273</td>\n",
       "      <td>fail</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>191 rows × 3 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "       actual  prediction investing\n",
       "0    0.691248    0.690265         -\n",
       "1    0.736622    0.641158      fail\n",
       "2    0.747421    0.715432      fail\n",
       "3    0.816973    0.735599      fail\n",
       "4    0.797308    0.778129   success\n",
       "5    0.781431    0.770791   success\n",
       "6    0.805932    0.739125      fail\n",
       "7    0.824146    0.796034      fail\n",
       "8    0.819230    0.785213   success\n",
       "9    0.835993    0.811944      fail\n",
       "10   0.833978    0.794492   success\n",
       "11   0.793520    0.810953   success\n",
       "12   0.798275    0.768841      fail\n",
       "13   0.784736    0.773485   success\n",
       "14   0.750645    0.774262   success\n",
       "15   0.658769    0.718268   success\n",
       "16   0.684720    0.639693      fail\n",
       "17   0.650064    0.652056   success\n",
       "18   0.627095    0.624257   success\n",
       "19   0.553997    0.620339   success\n",
       "20   0.572937    0.539277      fail\n",
       "21   0.582527    0.550774      fail\n",
       "22   0.635477    0.599056   success\n",
       "23   0.661670    0.580054      fail\n",
       "24   0.611057    0.645882   success\n",
       "25   0.514426    0.585958   success\n",
       "26   0.526999    0.491288      fail\n",
       "27   0.465264    0.500150   success\n",
       "28   0.389587    0.476872      fail\n",
       "29   0.333414    0.382408   success\n",
       "..        ...         ...       ...\n",
       "161  0.882818    0.937508   success\n",
       "162  0.889426    0.871499      fail\n",
       "163  0.831721    0.867197   success\n",
       "164  0.840506    0.829921      fail\n",
       "165  0.868391    0.838647      fail\n",
       "166  0.887814    0.860306      fail\n",
       "167  0.920616    0.885473      fail\n",
       "168  0.928191    0.890973      fail\n",
       "169  0.951564    0.922606      fail\n",
       "170  0.952531    0.905984      fail\n",
       "171  0.966070    0.958856   success\n",
       "172  0.969536    0.937659      fail\n",
       "173  0.945277    0.955349   success\n",
       "174  0.923920    0.930931   success\n",
       "175  0.907076    0.901971   success\n",
       "176  0.913201    0.899047      fail\n",
       "177  0.930287    0.906905      fail\n",
       "178  0.938749    0.890550      fail\n",
       "179  0.922711    0.931942   success\n",
       "180  0.930932    0.885219      fail\n",
       "181  0.920777    0.919069   success\n",
       "182  0.906834    0.914604   success\n",
       "183  0.917876    0.882138      fail\n",
       "184  0.891844    0.892312   success\n",
       "185  0.824629    0.857188   success\n",
       "186  0.859687    0.834307   success\n",
       "187  0.909010    0.827400      fail\n",
       "188  0.923195    0.899352      fail\n",
       "189  0.985090    0.906775      fail\n",
       "190  0.989845    0.945273      fail\n",
       "\n",
       "[191 rows x 3 columns]"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "fail       109\n",
       "success     81\n",
       "-            1\n",
       "Name: investing, dtype: int64"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "result['investing'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.5736842105263158"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "109/190"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}