Brazilian Kaleidoscpe - ¤Ê¤Ä¤«¤·¤Î¥Õ¥é¥¤¥ä¡¼
¤½¤¦¤Ç¤¹¡ª
¤¢¤ÎÅÁÀâ¤Î¥Ñ¡¼¥Æ¥£¡¼¡¢¥Ö¥é¥¸¥ëËü²Ú¶À¤³¤ÈBrazilian Kaleidoscpe¤Î¥Õ¥é¥¤¥ä¡¼¤¬È¯·¡¤µ¤ì¤Þ¤·¤¿¡ª

¤³¤¤¤Ä¤ÏËͤ¬ÉÁ¤¤¤¿¥¤¥é¥¹¥È¤Ê¤Î¤Ç¤¹¤±¤É¡¢¤È¤¢¤ë¿§ÃˤΰÍÍê¤Ë¤è¤ê²áµî¤Î¥Ç¡¼¥¿¤òȯ·¡¡£
¤½¤·¤ÆÆæ¤ÎMO¥Ç¥£¥¹¥¯¡Ê¾Ð¡Ë¤«¤éÉü¸µ¤µ¤ì¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£
¾¤Ë¤â¿§¡¹È¯·¡¤µ¤ì¤¿¤Î¤Ç¤¹¤¬¡¢ÀÞ¤ò¸«¤Æ¥¢¥Ã¥×¤·¤Æ¤¤¤¤Þ¤¹¡£
¡Ä¤½¤â¤½¤â¥Ö¥é¥¸¥ëËü²Ú¶À¤È¤Ï¤Ê¤ó¤¾¤ä¡©¤È¤¤¤¦Êý¤Ï¡ÄÅö»þ¤òÃΤ벿˿¤µ¤ó¤Î¥³¥á¥ó¥È¤òÆÉ¤ó¤Ç¤ß¤Æ¤¯¤À¤µ¤¤¡Ê°Ê²¼¤´»²¾È¡Ë¡£
¤É¤¦¤Ç¤·¤ç¤¦¤«¡©
¥É¥¥É¥¤·¤Æ¤¤Þ¤»¤ó¤«¡©
¹Ô¤Ã¤¿¤³¤È¤¬¤¢¤ë¡ª¤È¤¤¤¦Êý¤¬¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤·¤¿¤é¡¢À§Èó¥³¥á¥ó¥È¤ò¤è¤»¤Æ¤¯¤À¤µ¤¤¡£
¥¦¥¥ã¥Ã¡ª¡ª
¤¢¤ÎÅÁÀâ¤Î¥Ñ¡¼¥Æ¥£¡¼¡¢¥Ö¥é¥¸¥ëËü²Ú¶À¤³¤ÈBrazilian Kaleidoscpe¤Î¥Õ¥é¥¤¥ä¡¼¤¬È¯·¡¤µ¤ì¤Þ¤·¤¿¡ª

¤³¤¤¤Ä¤ÏËͤ¬ÉÁ¤¤¤¿¥¤¥é¥¹¥È¤Ê¤Î¤Ç¤¹¤±¤É¡¢¤È¤¢¤ë¿§ÃˤΰÍÍê¤Ë¤è¤ê²áµî¤Î¥Ç¡¼¥¿¤òȯ·¡¡£
¤½¤·¤ÆÆæ¤ÎMO¥Ç¥£¥¹¥¯¡Ê¾Ð¡Ë¤«¤éÉü¸µ¤µ¤ì¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£
¾¤Ë¤â¿§¡¹È¯·¡¤µ¤ì¤¿¤Î¤Ç¤¹¤¬¡¢ÀÞ¤ò¸«¤Æ¥¢¥Ã¥×¤·¤Æ¤¤¤¤Þ¤¹¡£
¡Ä¤½¤â¤½¤â¥Ö¥é¥¸¥ëËü²Ú¶À¤È¤Ï¤Ê¤ó¤¾¤ä¡©¤È¤¤¤¦Êý¤Ï¡ÄÅö»þ¤òÃΤ벿˿¤µ¤ó¤Î¥³¥á¥ó¥È¤òÆÉ¤ó¤Ç¤ß¤Æ¤¯¤À¤µ¤¤¡Ê°Ê²¼¤´»²¾È¡Ë¡£
Cinematic Jazz & kaleidoscopic Brazilian Sound.
¤ª¤½¤é¤¯¡¢»ä¤ÎÀÛ¤¤±Ñ¸ìÎϤò°Ê¤Ã¤Æ²ò¼á¤¹¤ë¤Ë¡¢
Ëü²Ú¶À¤òÇÁ¤¤¤Æ¥Ö¥é¥¸¥ë¤Î±Ç²è¤ò¤ß¤ë½¸¤¤¤Ê¤ó¤Ç¤·¤ç¤¦¤«¡£
¤Ç¤âJazz¤È¤«Sound¤È¤«¤«¤¤¤Æ¤¢¤ë¤«¤é¡¢²»³Ú¤Î½¸¤¤¤Ê¤ó¤Ç¤·¤ç¤¦¤«¡£
¤¤¤º¤ì¤Ë¤·¤Æ¤â¡¢¥µ¥¤¥±¥Ç¥ê¥Ã¥¯¤Ê¹á¤ê¤¬°ì¶Ú¤ÎÉ÷¤È¤Ê¤Ã¤Æ
¸Ô´Ö¤ò¤½¤è¤°¡¢¤½¤ó¤ÊÊ·°Ïµ¤¤ò´¶¤¸¤Þ¤·¤¿¡£
¤³¤Î¥Ñ¡¼¥Æ¥£¡¼¤Ë»²²Ã¤µ¤ì¤Æ¤¤¤ëÊý¤Ï¡¢
¤¢¤µ¤Ã¤Æ¤ÎÊý¸þ¤Ë¸þ¤«¤Ã¤Æî²¿Ê¤¹¤ë¡¢¤¢¤ë¼ï¤Î¥ß¥È¥³¥ó¥É¥ê¥¢¤ò¡¢¸²Èù¶ÀŪ¤Ê¥ß¥¯¥í¥¹¥±¡¼¥ë¤Ç°Ê¤Ã¤Æ¥¢¥Ê¥é¥¤¥º¤¹¤ë¡¢µæ¶Ë¤Î´Ä¶ÊݸîÃÄÂΤˤâ½ê°¤·¤Æ¤¤¤ë¤³¤È¤Ç¤·¤ç¤¦¡£
¤½¤ó¤Ê¤¢¤Ê¤¿¤Ïº£¤¹¤°¥Ó¥Ð¥Î¥ó¡ª
¥Þ¥¹¥È¥©¥©¥©¥ª¡ª¡ª¡ª
¤É¤¦¤Ç¤·¤ç¤¦¤«¡©
¥É¥¥É¥¤·¤Æ¤¤Þ¤»¤ó¤«¡©
¹Ô¤Ã¤¿¤³¤È¤¬¤¢¤ë¡ª¤È¤¤¤¦Êý¤¬¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤·¤¿¤é¡¢À§Èó¥³¥á¥ó¥È¤ò¤è¤»¤Æ¤¯¤À¤µ¤¤¡£
¥¦¥¥ã¥Ã¡ª¡ª
DriveCleaner 2006 - ¤ª»Å»ö¤È¤´·ëº§¤¬´í¸±¤Ç¤¹
Êì¿Æ¤«¤é¥Ø¥ë¥×¤ÎÀ¼¤¬¤«¤«¤ê¤Þ¤·¤¿¡£
¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤ò¸«¤Æ¤¤¤¿¤é¤³¤ó¤Ê²èÌ̤¬½Ð¤Æ¤¤¿¤Î¤À¤±¤ì¤É¡¢¤É¤¦¤·¤¿¤é¤è¤¤¤Î¤À¤í¤¦¤«¡©¤È¤¤¤¦¤â¤Î¤Ç¤¹¡£
¤³¤ó¤Ê²èÌ̤Ȥ¤¤¦¤Î¤Ï¢¤³¤ó¤Ê²èÌ̡ʾСË
¡Ê²èÁü¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤È³ÈÂ礷¤ÆÊ¸»ú¤¬ÆÉ¤ß¤ä¤¹¤¯¤Ê¤ê¤Þ¤¹¡Ë

¸À¤Ã¤Æ¤¤¤ë¤³¤È¤¬¤¹¤²¤§¤Ê¤¡¡£¡£¡£
¤ª»Å»ö¤È¤´·ëº§¤¬´í¸±¤Ç¤¹¤Ã¤Æ¡Ê¾Ð¡Ë
¤¤¤Ã¤¿¤¤¤É¤ó¤Ê¾õ¶·¤À¤Ã¤Æ¤¤¤¦¤Î¤ä¤é¡Ä
¤É¤¦¤â¡¢¥Ö¥é¥¦¥¶¤Î²èÌ̤ˤ³¤ó¤Ê¥ä¥Ä¤¬É½¼¨¤µ¤ì¤¿¤Î¤Ç¡¢²¿¤âµ¿¤ï¤º¡Öº£¤¹¤°½¤Éü¡ª¡×¤·¤Æ¤·¤Þ¤Ã¤¿¤é¤·¤¤¤Î¤Ç¤¹¡£

¤¤¤ï¤æ¤ë¡¢µ¶Áõ¥¢¥ó¥Á¥¹¥Ñ¥¤¥¦¥§¥¢¤Ã¤Æ¤ä¤Ä¤Ç¤¹¤«¤Í¡£
¤È¤â¤«¤¯´Ö°ã¤Ã¤Æ¤â²ø¤·¤¤¥á¥Ã¥»¡¼¥¸¤ËÈ¿±þ¤·¤Æ¥¯¥ê¥Ã¥¯¤Ê¤É¤·¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡ª
¤×¤ó¤×¤ó¡ª¡ª
¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤ò¸«¤Æ¤¤¤¿¤é¤³¤ó¤Ê²èÌ̤¬½Ð¤Æ¤¤¿¤Î¤À¤±¤ì¤É¡¢¤É¤¦¤·¤¿¤é¤è¤¤¤Î¤À¤í¤¦¤«¡©¤È¤¤¤¦¤â¤Î¤Ç¤¹¡£
¤³¤ó¤Ê²èÌ̤Ȥ¤¤¦¤Î¤Ï¢¤³¤ó¤Ê²èÌ̡ʾСË
¡Ê²èÁü¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤È³ÈÂ礷¤ÆÊ¸»ú¤¬ÆÉ¤ß¤ä¤¹¤¯¤Ê¤ê¤Þ¤¹¡Ë

¸À¤Ã¤Æ¤¤¤ë¤³¤È¤¬¤¹¤²¤§¤Ê¤¡¡£¡£¡£
¤ª»Å»ö¤È¤´·ëº§¤¬´í¸±¤Ç¤¹¤Ã¤Æ¡Ê¾Ð¡Ë
¤¤¤Ã¤¿¤¤¤É¤ó¤Ê¾õ¶·¤À¤Ã¤Æ¤¤¤¦¤Î¤ä¤é¡Ä
¤É¤¦¤â¡¢¥Ö¥é¥¦¥¶¤Î²èÌ̤ˤ³¤ó¤Ê¥ä¥Ä¤¬É½¼¨¤µ¤ì¤¿¤Î¤Ç¡¢²¿¤âµ¿¤ï¤º¡Öº£¤¹¤°½¤Éü¡ª¡×¤·¤Æ¤·¤Þ¤Ã¤¿¤é¤·¤¤¤Î¤Ç¤¹¡£

¤¤¤ï¤æ¤ë¡¢µ¶Áõ¥¢¥ó¥Á¥¹¥Ñ¥¤¥¦¥§¥¢¤Ã¤Æ¤ä¤Ä¤Ç¤¹¤«¤Í¡£
¤È¤â¤«¤¯´Ö°ã¤Ã¤Æ¤â²ø¤·¤¤¥á¥Ã¥»¡¼¥¸¤ËÈ¿±þ¤·¤Æ¥¯¥ê¥Ã¥¯¤Ê¤É¤·¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡ª
¤×¤ó¤×¤ó¡ª¡ª
¤æ¤Ã¤Ô - ¥á¥í¥ó¥Ñ¥ó¤Î¤¦¤¿
¤µ¤Æ¡¢³Æ½ê¤ÇÏÃÂêÁûÁ³¤Î¡Ê¡©¡Ë¤æ¤Ã¤Ô¤¬²Î¤¦¡¢¥á¥í¥ó¥Ñ¥ó¤Î¤¦¤¿¤¬2007/10/24¤Ë¥Þ¥¥·¥·¥ó¥°¥ë¤È¤·¤Æ¥Ó¥¯¥¿¡¼¥¨¥ó¥¿¡¼¥Æ¥¤¥á¥ó¥È¤è¤êȯÇ䤵¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤·¤¿¡ª

¤È¤ê¤¢¤¨¤º¡¢¤´Â¸ÃΤΤʤ¤Êý¤ÏYouTube¤Ë¥¢¥Ã¥×¤µ¤ì¤Æ¤¤¤ë¤³¤Á¤é¤Î±ÇÁü¤ò¤´Í÷¤¯¤À¤µ¤¤¡Ê¡Ä¤³¤Î±ÇÁü¼«ÂΤϥե¡¥ó¤¬ºî¤Ã¤¿¥¢¥ó¡¦¥ª¥Õ¥£¥·¥ã¥ë¤Ê¤â¤Î¤Ç¤¹¤¬¡Ë¡£
¤¦¡Á¤à¡£
ÁÇËѤʵ¿Ìä¤À¤³¤È¡£
¤æ¤Ã¤Ô¤Î¤³¤ì¤«¤é¤Î³èÌö¤ËÌܤ¬Î¥¤»¤Þ¤»¤ó¤è¡ª¡ª¡Ê¥Û¥ó¥È¤«¡ª¡©¡Ë

¤È¤ê¤¢¤¨¤º¡¢¤´Â¸ÃΤΤʤ¤Êý¤ÏYouTube¤Ë¥¢¥Ã¥×¤µ¤ì¤Æ¤¤¤ë¤³¤Á¤é¤Î±ÇÁü¤ò¤´Í÷¤¯¤À¤µ¤¤¡Ê¡Ä¤³¤Î±ÇÁü¼«ÂΤϥե¡¥ó¤¬ºî¤Ã¤¿¥¢¥ó¡¦¥ª¥Õ¥£¥·¥ã¥ë¤Ê¤â¤Î¤Ç¤¹¤¬¡Ë¡£
¤¢¤ó¥Ñ¥ó¤Ë¤Ï¤¢¤ó¤³¤¬Æþ¤Ã¤Æ¤ë¤Î¤Ë¡¢»ä¤Î¹¥¤¤Ê¥á¥í¥ó¥Ñ¥ó¤Ë¤Ï¥á¥í¥ó¤¬¤Ï¤¤¤Ã¤Æ¤Ê¤¤¡¦¡¦¡¦
¤¦¡Á¤à¡£
ÁÇËѤʵ¿Ìä¤À¤³¤È¡£
¤æ¤Ã¤Ô¤Î¤³¤ì¤«¤é¤Î³èÌö¤ËÌܤ¬Î¥¤»¤Þ¤»¤ó¤è¡ª¡ª¡Ê¥Û¥ó¥È¤«¡ª¡©¡Ë
Beaux yeux - ¤ª¤·¤ã¤ì¤Ê´ã¶À¥Õ¥ì¡¼¥à¤Î¤¢¤ë¤ªÅ¹
¤³¤Î¥Ö¥í¥°¤Ç¤â²¿ÅÙ¤«¼è¤ê¾å¤²¤Æ¤¤¤ë¤ªÅ¹Beaux yeux¤«¤é¤Ï¤¬¤¤¬ÆÏ¤¤Þ¤·¤¿¡£

¼«Í³¤¬µÖ¤Ë¤¢¤ë´ã¶À¥Õ¥ì¡¼¥à¡¢¥µ¥ó¥°¥é¥¹¤ÎÀìÌçŹ¡Ê¤â¤Á¤í¤ó¥ì¥ó¥º¤òºî¤ë¤³¤È¤â½ÐÍè¤Þ¤¹¡Ë¤Ê¤Î¤Ç¤¹¤¬¡¢´ã¶À¤ÎÄ´»Ò¤¬°¤¯¤Ê¤Ã¤¿¤ê¤·¤¿¾ì¹ç¤ÎÄ´À°¤ä¥¯¥ê¡¼¥Ë¥ó¥°¤Ê¤É¤Ï̵ÎÁ¤Ç¤ä¤Ã¤Æ¤¯¤À¤µ¤ë¤½¤¦¤Ç¤¹¡£
¤ªÅ¹¤â¤ª¤·¤ã¤ì¤Ç¤¹¤·¡¢ÃÍÃʤ⤫¤Ê¤êÎÉ¿´Åª¤Ê¤ªÅ¹¤Ç¤¹¤Î¤Ç¡¢¼«Í³¤¬µÖ¤Ë¤ª¤¤¤Ç¤ÎºÝ¤Ï¡¢À§Èó°ìÅÙ¤ªÎ©¤Á´ó¤ê¤¯¤À¤µ¤¤¡ª

¼«Í³¤¬µÖ¤Ë¤¢¤ë´ã¶À¥Õ¥ì¡¼¥à¡¢¥µ¥ó¥°¥é¥¹¤ÎÀìÌçŹ¡Ê¤â¤Á¤í¤ó¥ì¥ó¥º¤òºî¤ë¤³¤È¤â½ÐÍè¤Þ¤¹¡Ë¤Ê¤Î¤Ç¤¹¤¬¡¢´ã¶À¤ÎÄ´»Ò¤¬°¤¯¤Ê¤Ã¤¿¤ê¤·¤¿¾ì¹ç¤ÎÄ´À°¤ä¥¯¥ê¡¼¥Ë¥ó¥°¤Ê¤É¤Ï̵ÎÁ¤Ç¤ä¤Ã¤Æ¤¯¤À¤µ¤ë¤½¤¦¤Ç¤¹¡£
¤ªÅ¹¤â¤ª¤·¤ã¤ì¤Ç¤¹¤·¡¢ÃÍÃʤ⤫¤Ê¤êÎÉ¿´Åª¤Ê¤ªÅ¹¤Ç¤¹¤Î¤Ç¡¢¼«Í³¤¬µÖ¤Ë¤ª¤¤¤Ç¤ÎºÝ¤Ï¡¢À§Èó°ìÅÙ¤ªÎ©¤Á´ó¤ê¤¯¤À¤µ¤¤¡ª
½é²»¥ß¥¯ - ¥°¥é¥Ç¥£¥¦¥¹¤ò²Î¤¦
Yamaha¤Îµ»½Ñ¤Î·ë¾½¡£
¥Ë¥³Æ°¤Ç¤âÏÃÂêʨÆÃæ¤Î½é²»¥ß¥¯¤Ç¤¹¤¬¡¢
¤Ê¤ó¤È¡¢¥°¥é¥Ç¥£¥¦¥¹¤Î¥Æ¡¼¥Þ¶Ê¤ò̵Íý¤ä¤ê²Î¤Ã¤Æ¤¤¤Þ¤¹¡Ê¾Ð¡Ë
»úË뤺¤ì¤Þ¤¯¤ê¤À¤·¡Ê¾Ð¡Ë
¥Ç¥±¥Ä¥¯¡¢¥Ç¥±¥Ä¥¯¡¢¥¢¥Þ¥¾¥ó¡ª¥¢¥Þ¥¾¥ó¡ª¤Ã¤Æ¡ª¡ª
¤¤¤Ã¤¿¤¤¤Ê¤ó¤Ê¤ó¤Ç¤·¤ç¤¦¤«¡ª¡©
¤³¤Î¥»¥ó¥¹¤Ë¤Ïæ˹¤Ç¤¹¡Ê¶Ãس¤Î¤Þ¤Ê¤¶¤·¡Ë
¤Á¤Ê¤ß¤Ë¸µ¶Ê¤òÃΤé¤Ê¤¤Êý¤Ï¤³¤Á¤é¤Î¥Æ¡¼¥Þ¶Ê¤È¡¢¤³¤Á¤é¤Î¥Ü¥¹Âзè¤Î¶Ê¤òݤ¤¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
¡Ê¢¨¥Õ¥¡¥ß¥³¥ó¤Î¥²¡¼¥à¤Ç¤¹¤è¡Á¡Ë
¥Ë¥³Æ°¤Ç¤âÏÃÂêʨÆÃæ¤Î½é²»¥ß¥¯¤Ç¤¹¤¬¡¢
¤Ê¤ó¤È¡¢¥°¥é¥Ç¥£¥¦¥¹¤Î¥Æ¡¼¥Þ¶Ê¤ò̵Íý¤ä¤ê²Î¤Ã¤Æ¤¤¤Þ¤¹¡Ê¾Ð¡Ë
»úË뤺¤ì¤Þ¤¯¤ê¤À¤·¡Ê¾Ð¡Ë
¥Ç¥±¥Ä¥¯¡¢¥Ç¥±¥Ä¥¯¡¢¥¢¥Þ¥¾¥ó¡ª¥¢¥Þ¥¾¥ó¡ª¤Ã¤Æ¡ª¡ª
¤¤¤Ã¤¿¤¤¤Ê¤ó¤Ê¤ó¤Ç¤·¤ç¤¦¤«¡ª¡©
¤³¤Î¥»¥ó¥¹¤Ë¤Ïæ˹¤Ç¤¹¡Ê¶Ãس¤Î¤Þ¤Ê¤¶¤·¡Ë
¤Á¤Ê¤ß¤Ë¸µ¶Ê¤òÃΤé¤Ê¤¤Êý¤Ï¤³¤Á¤é¤Î¥Æ¡¼¥Þ¶Ê¤È¡¢¤³¤Á¤é¤Î¥Ü¥¹Âзè¤Î¶Ê¤òݤ¤¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
¡Ê¢¨¥Õ¥¡¥ß¥³¥ó¤Î¥²¡¼¥à¤Ç¤¹¤è¡Á¡Ë
²»³Ú¥¿¥¤¥¢¥Ã¥×¾ðÊó¤È³Ú¶Ê¤Î¥Þ¥Ã¥Á¥ó¥°¥µ¡¼¥Ó¥¹¡ÊPT4¡Ë
Á°²ó¤Îµ»ö¤Î³¤¤Ç¤¹¡£

Musicpro.jp¤¬¥ª¡¼¥×¥ó¤·¤Þ¤·¤¿¡£
¤½¤·¤Æ¡¢Ëͤθµ¤Ë°ìÄ̤Υ᡼¥ë¤¬ÆÏ¤¤Þ¤·¤¿¡£
¥ª¡¼¡ª¥Þ¥¤¥¬¥Ã¡ª¡ª
°Ê¾å¤Ç¡¢Musicpro¤Ë´Ø¤¹¤ë¥ì¥Ý¡¼¥È¤ò½ªÎ»¤¤¤¿¤·¤Þ¤¹¡Ê¾Ð¡Ë
¤Û¤²¤§¡Ä

Musicpro.jp¤¬¥ª¡¼¥×¥ó¤·¤Þ¤·¤¿¡£
¤½¤·¤Æ¡¢Ëͤθµ¤Ë°ìÄ̤Υ᡼¥ë¤¬ÆÏ¤¤Þ¤·¤¿¡£
¤³¤ÎÅÙ¤ÏMusicpro.jp¤Ø²ñ°÷ÅÐÏ¿¿½ÀÁ¤¤¤¿¤À¤¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿¡£
²ñ°÷ÅÐÏ¿¿³ºº¤Î·ë²Ì¤ò¤´Ï¢Íí¤µ¤»¤Æ¤¤¤¿¤À¤¤Þ¤¹¡£
º£²ó¤Î¤´ÅÐÏ¿ÆâÍÆ¤ò¿³ºº¤µ¤»¤Æ¤¤¤¿¤À¤¤¤¿·ë²Ì¡¢
ÂçÊÑ»Äǰ¤Ç¤Ï¤´¤¶¤¤¤Þ¤¹¤¬¡¢º£²ó¤Ï²ñ°÷ÅÐÏ¿¤ò¸«Á÷¤ê¤È¤µ¤»¤Æ¤¤¤¿¤À¤¤Þ¤¹¡£
¼¡¤Îµ¡²ñ¤¬¤´¤¶¤¤¤Þ¤·¤¿¤é¡¢¤¢¤é¤¿¤á¤Þ¤·¤Æ¤´ÅÐÏ¿¤Î¤Û¤É¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£
¥ª¡¼¡ª¥Þ¥¤¥¬¥Ã¡ª¡ª
°Ê¾å¤Ç¡¢Musicpro¤Ë´Ø¤¹¤ë¥ì¥Ý¡¼¥È¤ò½ªÎ»¤¤¤¿¤·¤Þ¤¹¡Ê¾Ð¡Ë
¤Û¤²¤§¡Ä
¶Ãس¤Î±ÇÁü - ů³Ø¤¹¤ë¥Þ¥ó¥È¥Ò¥Ò
Ë¿¥Þ¥¤¥ß¥¯ÍÍ¤ÎÆüµ¤«¤é¾ðÊó¤ò¥²¥Ã¥È¡£
¤Ê¤ó¤Ç¤¹¤«¡ª¤³¤Î±ÇÁü¤Ï¡ª¡ª
¥¹¥â¡¼¥«¡¼¥º¡¦¥Ç¥£¥é¥¤¥È¤Ç¤¹¤«¡ª¡©
¡Ä¥À¥á¥À¥á¥À¥á¡ª¡ª
¤³¤É¤â¤Ï¤³¤ó¤Ê¤Î¤ß¤Á¤ã¥À¥á¤Ç¤¹¤è¡Á¡ª¡ª
NHK¤ß¤ó¤Ê¤Î¤¦¤¿¡ª¡©
¤À¤á¤Ç¤¹¤è¡Á¡ª¡ª
¤Ê¤ó¤Ç¤¹¤«¡ª¤³¤Î±ÇÁü¤Ï¡ª¡ª
¥¹¥â¡¼¥«¡¼¥º¡¦¥Ç¥£¥é¥¤¥È¤Ç¤¹¤«¡ª¡©
¡Ä¥À¥á¥À¥á¥À¥á¡ª¡ª
¤³¤É¤â¤Ï¤³¤ó¤Ê¤Î¤ß¤Á¤ã¥À¥á¤Ç¤¹¤è¡Á¡ª¡ª
NHK¤ß¤ó¤Ê¤Î¤¦¤¿¡ª¡©
¤À¤á¤Ç¤¹¤è¡Á¡ª¡ª
ÅÄÃæ¥Õ¥ß¥ä with ÀÐÌîÂîµå - ÅÁÀâ¤Î¥Ñ¡¼¥Æ¥£¡¼
¤Þ¤µ¤«¡¢¤½¤³¤Ëʤ¬¤¢¤ë¤È¤Ï»×¤Ã¤Æ¤â¤ß¤Ê¤«¤Ã¤¿¡£
¼ê¤ËÆþ¤ì¤¿¥Õ¥é¥¤¥ä¡¼¤ÎÃϿޤò¸µ¤Ë¡¢¤½¤³¤È»×¤·¤¾ì½ê¤Ë¹Ô¤Ã¤Æ¤ß¤¿¤â¤Î¤Î¡¢
¤É¤¦¤Ë¤âʤ¬¤¢¤ë¤è¤¦¤Ë¤Ï»×¤¨¤Ê¤«¤Ã¤¿¤Î¤À¡£
ÎÙ¤Ë¤ÏÆæ¤Î¤ª¤â¤Á¤ã²°¤µ¤ó¤¬¤¢¤ë¡£
Ëͤϰդò·è¤·¤Æ¡¢¤½¤Î¤ª¤â¤Á¤ã²°¤µ¤ó¤Îʰ÷¤Ëʹ¤¤¤Æ¤ß¤¿¡£
¡Ö¤³¤Î¤ªÅ¹¤òõ¤·¤Æ¤¤¤ë¤ó¤Ç¤¹¤±¤É¡Ä¡×
¤¹¤ë¤È¡¢¤½¤Îʰ÷¤Ï¥ä¥ô¥¡¤£¤³¤È¤Ç¤âʹ¤«¤ì¤Æ¤·¤Þ¤Ã¤¿¤«¤Î¤è¤¦¤Ë¡¢¿È¤ò¤«¤¬¤á¡¢¤½¤·¤Æ¾®À¼¤ÇËͤËÓñ¤¤¤¿¡£
¡Ö¤½¤Î³¬Ãʤò¹ß¤ê¤Æ¤¤¤¤Ê¡ª¡×
³¬ÃÊ¡ª¡©
³Î¤«¤Ë¡¢¤ª¤â¤Á¤ã²°¤µ¤ó¤Îº¸Î٤ˤÏÃϲ¼¤Ø¤È³¤¯³¬Ãʤ¬¤¢¤Ã¤¿¡£
Ëͤϡֳиç¡×¤ò·è¤á¤Æ³¬Ãʤò¹ß¤ê¤Æ¤¤¤Ã¤¿¡£
¤½¤¦¡£
Ëͤϡ֤½¤ÎÀè¤Ç¸«¤¿¤â¤Î¤ò¡×¤³¤³¤Ë½ñ¤¯¡¢¤Þ¤µ¤Ë¤½¤Î¤¿¤á¤Ë¡¢¤³¤Îµ»ö¤ò½ñ¤¤¤Æ¤¤¤ë¤Î¤À¡£
¤¤¤¿¡Ä¡£
ʶ¤ì¤â¤Ê¤¤¡£¡ÄDJ¥Ö¡¼¥¹¤Ë¤ÏÅÄÃæ¥Õ¥ß¥ä¤¬¤¤¤¿¡Ä¡£
¤½¤·¤ÆÆæ¤Î²ÎÍØ¶Ê¤¬Î®¤ì¤Æ¤¤¤ë¥À¥ó¥¹¥Õ¥í¥¢¡¼¤Ï´û¤ËºÇ¹âĬ¤ò¤à¤«¤¨¤Æ¤¤¤¿¡£
¤è¤¯¸«¤ë¤ÈÅÄÃæ¥Õ¥ß¥ä¤¬Áàºî¤·¤Æ¤¤¤ë¤Î¤Ï¥¿¡¼¥ó¥Æ¡¼¥Ö¥ë¤È¤«¡¢DJ¥ß¥¥µ¡¼¤È¤«¤¤¤Ã¤¿¡¢¤Á¤ã¤Á¤Ê¤â¤Î¤Ç¤Ï¤Ê¤«¤Ã¤¿¡£
Ƭ¤¬¤É¤¦¤Ë¤«¤Ê¤ê¤½¤¦¤À¤Ã¤¿¡£
¤â¤Ã¤È¶²¤í¤·¤¤¤â¤Î¤ÎÊÒÎÚ¤òÌ£¤ï¤Ã¤¿¤Î¤À¡£
¤½¤¦¡£
¤½¤ì¤Ï¡¢Î®¤·¤½¤¦¤á¤ó¤Î¥ß¥¥·¥ó¥°¡¦¥³¥ó¥½¡¼¥ë¤À¤Ã¤¿¤Î¤À¡ª¡ª
Èà¡ÄÅÄÃæ¥Õ¥ß¥ä¤Ï¥Õ¥§¡¼¥À¡¼¤ÎÈù̯¤ÊÁàºî¤Çº¸±¦¤Îή¤·¤½¤¦¤á¤ó¤Î¡Ö¶ñºà¡×¤ò¥³¥ó¥È¥í¡¼¥ë¤·¡¢¤Þ¤¿¥Ô¥Ã¥Á¥³¥ó¥È¥í¡¼¥é¡¼¤Ç°Ê¤Ã¤Æ¡¢¤½¤ì¤¬Î®¤ì¤ë®¤µ¤ò¥³¥ó¥È¥í¡¼¥ë¤·¤Æ¤¤¤¿¤Î¤À¡£
¤½¤·¤Æ¡ª
¤½¤·¤Æ¡Ä¡¢¤½¤ÎÀè¤Ë¤Ï¡¢¤¢¤ÎÀÐÌîÂîµå¤¬Á´Íç¤Ç¸ý¤ò³«¤±¤ÆÂÔ¤Á¹½¤¨¤Æ¤¤¤ë¤Ç¤Ï¤Ê¤¤¤«¡ª¡ª
¤Þ¤µ¤ËÃϹö³¨¿Þ¡£
ËͤϤ¢¤Ã¤±¤Ë¤È¤é¤ì¤Ê¤¬¤é¡¢¤½¤ì¤Ç¤â¤Ê¤ó¤È¤«¡¢Î®¤ì¤ë²ÎÍØ¶Ê¤Ë¤¢¤ï¤»¤ÆÍÙ¤ê»Ï¤á¤¿¡£
°Õ¼±¤¬±ó¤Î¤¤¤Æ¤¤¤¯¤Î¤ò´¶¤¸¤¿¡Ä¡£
¼ê¤ËÆþ¤ì¤¿¥Õ¥é¥¤¥ä¡¼¤ÎÃϿޤò¸µ¤Ë¡¢¤½¤³¤È»×¤·¤¾ì½ê¤Ë¹Ô¤Ã¤Æ¤ß¤¿¤â¤Î¤Î¡¢
¤É¤¦¤Ë¤âʤ¬¤¢¤ë¤è¤¦¤Ë¤Ï»×¤¨¤Ê¤«¤Ã¤¿¤Î¤À¡£
ÎÙ¤Ë¤ÏÆæ¤Î¤ª¤â¤Á¤ã²°¤µ¤ó¤¬¤¢¤ë¡£
Ëͤϰդò·è¤·¤Æ¡¢¤½¤Î¤ª¤â¤Á¤ã²°¤µ¤ó¤Îʰ÷¤Ëʹ¤¤¤Æ¤ß¤¿¡£
¡Ö¤³¤Î¤ªÅ¹¤òõ¤·¤Æ¤¤¤ë¤ó¤Ç¤¹¤±¤É¡Ä¡×
¤¹¤ë¤È¡¢¤½¤Îʰ÷¤Ï¥ä¥ô¥¡¤£¤³¤È¤Ç¤âʹ¤«¤ì¤Æ¤·¤Þ¤Ã¤¿¤«¤Î¤è¤¦¤Ë¡¢¿È¤ò¤«¤¬¤á¡¢¤½¤·¤Æ¾®À¼¤ÇËͤËÓñ¤¤¤¿¡£
¡Ö¤½¤Î³¬Ãʤò¹ß¤ê¤Æ¤¤¤¤Ê¡ª¡×
³¬ÃÊ¡ª¡©
³Î¤«¤Ë¡¢¤ª¤â¤Á¤ã²°¤µ¤ó¤Îº¸Î٤ˤÏÃϲ¼¤Ø¤È³¤¯³¬Ãʤ¬¤¢¤Ã¤¿¡£
Ëͤϡֳиç¡×¤ò·è¤á¤Æ³¬Ãʤò¹ß¤ê¤Æ¤¤¤Ã¤¿¡£
¤½¤¦¡£
Ëͤϡ֤½¤ÎÀè¤Ç¸«¤¿¤â¤Î¤ò¡×¤³¤³¤Ë½ñ¤¯¡¢¤Þ¤µ¤Ë¤½¤Î¤¿¤á¤Ë¡¢¤³¤Îµ»ö¤ò½ñ¤¤¤Æ¤¤¤ë¤Î¤À¡£
¤¤¤¿¡Ä¡£
ʶ¤ì¤â¤Ê¤¤¡£¡ÄDJ¥Ö¡¼¥¹¤Ë¤ÏÅÄÃæ¥Õ¥ß¥ä¤¬¤¤¤¿¡Ä¡£
¤½¤·¤ÆÆæ¤Î²ÎÍØ¶Ê¤¬Î®¤ì¤Æ¤¤¤ë¥À¥ó¥¹¥Õ¥í¥¢¡¼¤Ï´û¤ËºÇ¹âĬ¤ò¤à¤«¤¨¤Æ¤¤¤¿¡£
¤è¤¯¸«¤ë¤ÈÅÄÃæ¥Õ¥ß¥ä¤¬Áàºî¤·¤Æ¤¤¤ë¤Î¤Ï¥¿¡¼¥ó¥Æ¡¼¥Ö¥ë¤È¤«¡¢DJ¥ß¥¥µ¡¼¤È¤«¤¤¤Ã¤¿¡¢¤Á¤ã¤Á¤Ê¤â¤Î¤Ç¤Ï¤Ê¤«¤Ã¤¿¡£
Ƭ¤¬¤É¤¦¤Ë¤«¤Ê¤ê¤½¤¦¤À¤Ã¤¿¡£
¤â¤Ã¤È¶²¤í¤·¤¤¤â¤Î¤ÎÊÒÎÚ¤òÌ£¤ï¤Ã¤¿¤Î¤À¡£
¤½¤¦¡£
¤½¤ì¤Ï¡¢Î®¤·¤½¤¦¤á¤ó¤Î¥ß¥¥·¥ó¥°¡¦¥³¥ó¥½¡¼¥ë¤À¤Ã¤¿¤Î¤À¡ª¡ª
Èà¡ÄÅÄÃæ¥Õ¥ß¥ä¤Ï¥Õ¥§¡¼¥À¡¼¤ÎÈù̯¤ÊÁàºî¤Çº¸±¦¤Îή¤·¤½¤¦¤á¤ó¤Î¡Ö¶ñºà¡×¤ò¥³¥ó¥È¥í¡¼¥ë¤·¡¢¤Þ¤¿¥Ô¥Ã¥Á¥³¥ó¥È¥í¡¼¥é¡¼¤Ç°Ê¤Ã¤Æ¡¢¤½¤ì¤¬Î®¤ì¤ë®¤µ¤ò¥³¥ó¥È¥í¡¼¥ë¤·¤Æ¤¤¤¿¤Î¤À¡£
¤½¤·¤Æ¡ª
¤½¤·¤Æ¡Ä¡¢¤½¤ÎÀè¤Ë¤Ï¡¢¤¢¤ÎÀÐÌîÂîµå¤¬Á´Íç¤Ç¸ý¤ò³«¤±¤ÆÂÔ¤Á¹½¤¨¤Æ¤¤¤ë¤Ç¤Ï¤Ê¤¤¤«¡ª¡ª
¤Þ¤µ¤ËÃϹö³¨¿Þ¡£
ËͤϤ¢¤Ã¤±¤Ë¤È¤é¤ì¤Ê¤¬¤é¡¢¤½¤ì¤Ç¤â¤Ê¤ó¤È¤«¡¢Î®¤ì¤ë²ÎÍØ¶Ê¤Ë¤¢¤ï¤»¤ÆÍÙ¤ê»Ï¤á¤¿¡£
°Õ¼±¤¬±ó¤Î¤¤¤Æ¤¤¤¯¤Î¤ò´¶¤¸¤¿¡Ä¡£
ή¤ì¤ë¿å¤Î¤è¤¦¤Ë
ÅÔ±ÄÂç¹¾¸ÍÀþ
ʸ²½ÉþÁõ³Ø±¡
»Ò¸¤¤ò¼é¤ì¡ª¡ª - Don't shoot the puppy
»Ò¸¤¤¬²èÌ̤γ°¤Ë̵»ö¤Ë¶î¤±È´¤±¤Æ¤¤¤±¤ì¤Ð¡¢¥¯¥ê¥¢¡¼¡ª¡Ä¤È¤¤¤¦´Êñ¤Ê¥²¡¼¥à¤Ê¤Î¤Ç¤¹¤¬¡Ä¡£

¤É¤¦¤ä¤Ã¤Æ¡¢¤ä¤ë¤«¤Ã¤Æ¡©
¤Þ¤º¤Ï¡¢¤¿¤á¤·¤Ë¥²¡¼¥à¤ò¤ä¤Ã¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡ª
̵»ö¤Ë¥¯¥ê¥¢¡¼¤¹¤ë¤¿¤á¤Î"ÊýË¡"¤¬¤ï¤«¤Ã¤Æ¤«¤é¤¬¡¢ËÜÅö¤Î¥²¡¼¥à¡¦¥¹¥¿¡¼¥È¤Ê¤Î¤Ç¤¹¡£
¤¬¤ó¤Ð¤Ã¤Æ¡ª¡ª
¢¨¤³¤Îµ»ö¤«¤é¥²¡¼¥à¤Î¥«¥Æ¥´¥ê¡¼¤òÄɲä·¤Þ¤·¤¿¡£

¤É¤¦¤ä¤Ã¤Æ¡¢¤ä¤ë¤«¤Ã¤Æ¡©
¤Þ¤º¤Ï¡¢¤¿¤á¤·¤Ë¥²¡¼¥à¤ò¤ä¤Ã¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡ª
̵»ö¤Ë¥¯¥ê¥¢¡¼¤¹¤ë¤¿¤á¤Î"ÊýË¡"¤¬¤ï¤«¤Ã¤Æ¤«¤é¤¬¡¢ËÜÅö¤Î¥²¡¼¥à¡¦¥¹¥¿¡¼¥È¤Ê¤Î¤Ç¤¹¡£
¤¬¤ó¤Ð¤Ã¤Æ¡ª¡ª
¢¨¤³¤Îµ»ö¤«¤é¥²¡¼¥à¤Î¥«¥Æ¥´¥ê¡¼¤òÄɲä·¤Þ¤·¤¿¡£
¥¤¥é¥¹¥È¡¦¥«¡¼¥É - ¸ª¤¿¤¿¤·ô¡Ê¤«¤¿¤¿¤¿¤¤±¤ó¡Ë
Åŵå¤ÈÅÅÀþ
Market Daemon - ¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿»²¾Èµ¡Ç½¤Î¼ÂÁõ
Á°²ó¤Îµ»ö¤Î³¤¤Ç¤¹¡£¡Ê¥¯¥ê¥Ã¥¯¤¹¤ë¤È³ÈÂ礵¤ì¤Þ¤¹¡£³ÈÂ礷¤¿¿Þ¤Çʸ»ú¤¬¸«¤Å¤é¤¤Êý¤Ï¡¢²èÁü¤ò100%¤Î¥µ¥¤¥º¤Çɽ¼¨¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£¡Ë

¿ïʬ¤È´ü´Ö¤¬¤¢¤¤¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¡¢²¿¤ò¤ä¤Ã¤Æ¤¤¤¿¤Î¤«¤¹¤Ã¤«¤ê˺¤ì¤Æ¤·¤Þ¤¤¤½¤¦¤Ê¤Î¤Ç¤¹¤¬¡Ê´À¡Ë¡¢³µÍ׿ޤǤ¤¤¦¤È¡¢³ô¼°¥Ç¡¼¥¿»²¾Èµ¡Ç½¡Ê¢¡Ë¤òºî¤ê¤³¤ó¤Ç¤¤¤ë¤È¤³¤í¤Ç¤¹¤Í¡£
º£²ó¤Ï¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à¤òºîÀ®¤·¤Æ¤¤¤¤Þ¤¹¡£
¡ÊUML¿Þ¤Ï¤³¤ó¤Ê´¶¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£¡Ë

¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤È¤¤¤¦¤È¡¢¤½¤ì¤³¤½¤µ¤Þ¤¶¤Þ¤Ê¤â¤Î¤¬¤¢¤ë¤Î¤Ç¤¹¤¬¡¢º£²ó¤Ï°Üưʿ¶Ñ¡¢°Üưʿ¶ÑЪΥΨ¡¢RSI¡¢¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹¡ÊFast/Slow¡Ë¤¢¤¿¤ê¤ò¼ÂÁõ¤·¤è¤¦¤È»×¤¤¤Þ¤¹¡£
Àè¤Û¤É¤ÎUML¿Þ¤ò¸µ¤Ë¼ÂºÝ¤Ë¥³¡¼¥Ç¥£¥ó¥°¤·¤Æ¤¤¤¯¤È¤³¤ó¤Ê´¶¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
¡Ê¤Á¤ç¤Ã¤ÈŤ¤¤Ç¤¹¤¬Ž¥Ž¥Ž¥¡Ë
// *********************************************
// ¥×¥í¥°¥é¥à̾¡§TechnicalDataAccess.java
// ¥×¥í¥°¥é¥à³µÍס§¥Æ¥¯¥Ë¥«¥ë¡¦¥Ç¡¼¥¿¤Ë¥¢¥¯¥»¥¹¤¹¤ë
// *********************************************
// ¥Ñ¥Ã¥±¡¼¥¸¡§mdp.data
// *********************************************
package mdp.data;
// *********************************************
// ³Æ¼ï¥¤¥ó¥Ý¡¼¥È
// *********************************************
import util.Utility;
class TechnicalDataAccess extends DataAccess {
// *********************************************
// ¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤ÎÄêµÁ
// *********************************************
// ¾Ú·ô¥³¡¼¥É
private int code;
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö
private int daysOfAverage;
// RSI¤Î»»½Ð´ü´Ö
private int daysOfRSI;
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤Î»»½Ð´ü´Ö
private int daysOfFastStochasticsK;
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î»»½Ð´ü´Ö
private int daysOfFastStochasticsD;
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤Î»»½Ð´ü´Ö
private int daysOfSlowStochasticsSD;
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý·¿¥ª¥Ö¥¸¥§¥¯¥È
private ArchivedDataAccess ada;
// *********************************************
// ¥³¥ó¥¹¥È¥é¥¯¥¿¤ÎÄêµÁ
// *********************************************
TechnicalDataAccess(int code) {
this.code = code;
this.daysOfAverage = 14;
this.daysOfRSI = 14;
this.daysOfFastStochasticsK = 9;
this.daysOfFastStochasticsD = 3;
this.daysOfSlowStochasticsSD = 3;
}
// *********************************************
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½¤¹¤ë
// *********************************************
private void initArchivedDataAccess(int period) {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹À¸À®
ada = new ArchivedDataAccess(code);
// ÆüÉÕ¤ÈX±Ä¶ÈÆüÁ°¤ÎÀßÄê
if ( date > 0 ) {
ada.setDate(date);
} else if ( daysAgo > 0 ) {
ada.setDaysAgo(daysAgo);
}
// ´ü´Ö¤ÎÀßÄê
ada.setPeriod(period);
}
// *********************************************
// Á°ÆüÈæ¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int[] getCompDayBefore() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// °ì»þŪ¤Ê½ªÃÍÊݸÊÑ¿ô¤ò½é´ü²½
// ¢¨ÀßÄꤵ¤ì¤Æ¤¤¤ë´ü´Ö¤è¤ê1Æü¿¤¯¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
int[] tmpEndValue = new int[period+1];
for (int i = 0; i < period+1; i++) {
tmpEndValue[i] = -1;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨ÀßÄꤵ¤ì¤Æ¤¤¤ë´ü´Ö¤è¤ê1Æü¿¤¯¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(period+1);
// Á°ÆüÈæ½é´ü²½
int[] compDayBefore = new int[period];
for (int i = 0; i < period; i++) {
compDayBefore[i] = 0;
}
// ½ªÃͼèÆÀ
tmpEndValue = ada.getEndValue();
// Á°ÆüÈæ¼èÆÀ
for (int i = 0; i < period; i++) {
compDayBefore[i] = tmpEndValue[i] - tmpEndValue[i+1];
}
// Ìá¤êÃͥ꥿¡¼¥ó
return compDayBefore;
}
// *********************************************
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfAverage(int daysOfAverage) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfAverage = daysOfAverage;
}
// *********************************************
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfAverage() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfAverage;
}
// *********************************************
// RSI¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfRSI(int daysOfRSI) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfRSI = daysOfRSI;
}
// *********************************************
// RSI¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfRSI() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfRSI;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfFastStochasticsK(int daysOfFastStochasticsK) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfFastStochasticsK = daysOfFastStochasticsK;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfFastStochasticsK() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfFastStochasticsK;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfFastStochasticsD(int daysOfFastStochasticsD) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfFastStochasticsD = daysOfFastStochasticsD;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfFastStochasticsD() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfFastStochasticsD;
}
// *********************************************
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfSlowStochasticsSD(int daysOfSlowStochasticsSD) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfSlowStochasticsSD = daysOfSlowStochasticsSD;
}
// *********************************************
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfSlowStochasticsSD() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfSlowStochasticsSD;
}
// *********************************************
// ÃͲ¼¤¬¤êÉý¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDownValue() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// Ã;夬¤êÉý¤ò½é´ü²½
int downValue = 0;
// Á°ÆüÈæ¼èÆÀ
int[] compDayBefore = getCompDayBefore();
// Ã;夬¤êÉý¤ò¼èÆÀ
for (int i = 0; i < period; i++) {
if (compDayBefore[i] < 0) {
downValue += compDayBefore[i];
}
}
// Ìá¤êÃͥ꥿¡¼¥ó
return downValue;
}
// *********************************************
// Ã;夬¤êÉý¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getUpValue() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// Ã;夬¤êÉý¤ò½é´ü²½
int upValue = 0;
// Á°ÆüÈæ¼èÆÀ
int[] compDayBefore = getCompDayBefore();
// Ã;夬¤êÉý¤ò¼èÆÀ
for (int i = 0; i < period; i++) {
if (compDayBefore[i] > 0) {
upValue += compDayBefore[i];
}
}
// Ìá¤êÃͥ꥿¡¼¥ó
return upValue;
}
// *********************************************
// Ê¿¶ÑÃͤò¼èÆÀ¤¹¤ë
// *********************************************
protected double[] getAverage() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfAverage´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfAverage());
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// Ê¿¶ÑÃͤò½é´ü²½
double[] average = new double[period];
for (int i = 0; i < period; i++) {
average[i] = -1.0;
}
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < period; i++ ) {
// Ê¿¶ÑÃͤò¼èÆÀ
average[i] = Utility.getAverage(ada.getEndValue());
// daysAgo¤ò1ÆüÁý¤ä¤¹
ada.setDaysAgo(ada.getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[period];
tmpDate = ada.getDateValue();
for ( int i = 0; i < period; i++ ) {
// ÆüÉÕ¤òÀßÄê
ada.setDate(tmpDate[i]);
// Ê¿¶ÑÃͤò¼èÆÀ
average[i] = Utility.getAverage(ada.getEndValue());
}
}
// Ìá¤êÃͥ꥿¡¼¥ó
return average;
}
// *********************************************
// Ê¿¶ÑЪΥΨ¤ò¼èÆÀ
// *********************************************
protected double[] getDistFromAverage() {
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfAverage´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfAverage());
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ½ªÃͤò¼èÆÀ
int[] endValue = ada.getEndValue();
// Ê¿¶ÑЪΥΨ¤ò½é´ü²½
double[] distFromAverage = new double[period];
for ( int i = 0; i < period; i++ ) {
distFromAverage[i] = 0.0;
}
// Ê¿¶ÑÃͤò¼èÆÀ
double[] average = getAverage();
// Ê¿¶ÑЪΥΨ¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
distFromAverage[i] = (((double)endValue[i]-average[i])/average[i])*100.0;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return distFromAverage;
}
// *********************************************
// RSI¤ò¼èÆÀ
// *********************************************
protected double[] getRSI() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ´ü´Ö¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×
int backupPeriod = period;
// RSI»»½Ð´ü´Ö
int daysOfRSI = getDaysOfRSI();
// Ã;夬¤êÉý¤Î¹ç·×¤ò½é´ü²½
int[] upValue = new int[period];
for ( int i = 0; i < period; i++ ) {
upValue[i] = 0;
}
// ÃͲ¼¤¬¤êÉý¤Î¹ç·×¤ò½é´ü²½
int[] downValue = new int[period];
for ( int i = 0; i < period; i++ ) {
downValue[i] = 0;
}
// RSI¤ò½é´ü²½
double[] rsi = new double[period];
for ( int i = 0; i < period; i++ ) {
rsi[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfRSI´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(daysOfRSI);
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < period; i++ ) {
// ´ü´Ö¤òRSI¼èÆÀ´ü´Ö¤ËÀßÄꤹ¤ë
setPeriod(daysOfRSI);
// Ã;夬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
upValue[i] = getUpValue();
// ÃͲ¼¤¬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
downValue[i] = getDownValue();
// ´ü´Ö¤ò¸µ¤ËÌ᤹
setPeriod(backupPeriod);
// daysAgo¤ò1ÆüÁý¤ä¤¹
setDaysAgo(getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[period];
tmpDate = ada.getDateValue();
for ( int i = 0; i < period; i++ ) {
// ÆüÉÕ¤òÀßÄê
setDate(tmpDate[i]);
// ´ü´Ö¤òRSI¼èÆÀ´ü´Ö¤ËÀßÄꤹ¤ë
setPeriod(daysOfRSI);
// Ã;夬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
upValue[i] = getUpValue();
// ÃͲ¼¤¬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
downValue[i] = getDownValue();
// ´ü´Ö¤ò¸µ¤ËÌ᤹
setPeriod(backupPeriod);
}
}
// RSI¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
rsi[i] = ((double)upValue[i]/(double)(upValue[i]+Math.abs(downValue[i])))*100;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return rsi;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤ò¼èÆÀ
// *********************************************
protected double[] getFastStochasticsK() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
initArchivedDataAccess(period);
// ½ªÃͤò¼èÆÀ
int[] endValue = ada.getEndValue();
// °ÂÃͤò½é´ü²½
int[] lowValue = new int[period];
for ( int i = 0; i < period; i++ ) {
lowValue[i] = -1;
}
// ¹âÃͤò½é´ü²½
int[] highValue = new int[period];
for ( int i = 0; i < period; i++ ) {
highValue[i] = -1;
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤ò½é´ü²½
double[] fastStochasticsK = new double[period];
for ( int i = 0; i < period; i++ ) {
fastStochasticsK[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfFastStochasticsK´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfFastStochasticsK());
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < period; i++ ) {
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
// daysAgo¤ò1ÆüÁý¤ä¤¹
ada.setDaysAgo(ada.getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[period];
tmpDate = ada.getDateValue();
for ( int i = 0; i < period; i++ ) {
// ÆüÉÕ¤òÀßÄê
ada.setDate(tmpDate[i]);
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
}
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹¡óK¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
fastStochasticsK[i] = ((double)endValue[i]-(double)lowValue[i])/((double)highValue[i]-(double)lowValue[i])*100.0;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return fastStochasticsK;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤ò¼èÆÀ
// *********************************************
protected double[] getFastStochasticsD() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// period´ü´Ö¤ËdaysOfFastStochasticsD´ü´Ö¤ò²Ã»»¤·¤Æ1°ú¤¤¤¿´ü´Ö¤ò¼èÆÀ
int collectPeriod = period+getDaysOfFastStochasticsD()-1;
// ʬÊì¤ò½é´ü²½
int[] molecule = new int[period];
for ( int i = 0; i < period; i++ ) {
molecule[i] = 0;
}
// ʬ»Ò¤ò½é´ü²½
int[] denominator = new int[period];
for ( int i = 0; i < period; i++ ) {
denominator[i] = 0;
}
// °ÂÃͤò½é´ü²½
int[] lowValue = new int[collectPeriod];
for ( int i = 0; i < collectPeriod; i++ ) {
lowValue[i] = -1;
}
// ¹âÃͤò½é´ü²½
int[] highValue = new int[collectPeriod];
for ( int i = 0; i < collectPeriod; i++ ) {
highValue[i] = -1;
}
// ½ªÃͤò½é´ü²½
int[] endValue = new int[collectPeriod];
for ( int i = 0; i < collectPeriod; i++) {
endValue[i] = -1;
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤ò½é´ü²½
double[] fastStochasticsD = new double[period];
for ( int i = 0; i < period; i++ ) {
fastStochasticsD[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
initArchivedDataAccess(collectPeriod);
// ½ªÃͤò¼èÆÀ
endValue = ada.getEndValue();
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfFastStochasticsK´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfFastStochasticsK());
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < collectPeriod; i++ ) {
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
// daysAgo¤ò1ÆüÁý¤ä¤¹
ada.setDaysAgo(ada.getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[collectPeriod];
tmpDate = ada.getDateValue();
for ( int i = 0; i < collectPeriod; i++ ) {
// ÆüÉÕ¤òÀßÄê
ada.setDate(tmpDate[i]);
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
}
}
// ʬÊì¤Èʬ»Ò¤ò·×»»
for ( int i = 0; i < period; i++ ) {
for ( int j = 0; j < daysOfFastStochasticsD; j++ ) {
molecule[i] += (endValue[i+j]-lowValue[i+j]);
denominator[i] += (highValue[i+j]-lowValue[i+j]);
}
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
fastStochasticsD[i] = ((double)molecule[i]/(double)denominator[i])*100;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return fastStochasticsD;
}
// *********************************************
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤ò¼èÆÀ
// *********************************************
protected double[] getSlowStochasticsSD() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ´ü´Ö¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×
int backupPeriod = period;
// daysOfSlowStochasticsSD´ü´Ö¤ò¼èÆÀ
int daysOfSlowStochasticsSD = getDaysOfSlowStochasticsSD();
// period´ü´Ö¤ËdaysOfSlowStochasticsSD´ü´Ö¤ò²Ã»»¤·¤Æ1°ú¤¤¤¿´ü´Ö¤ò¼èÆÀ
int collectPeriod = period+daysOfSlowStochasticsSD-1;
// ʬÊì¤ò½é´ü²½
double[] molecule = new double[period];
for ( int i = 0; i < period; i++ ) {
molecule[i] = 0;
}
// °ì»þŪ¤ÊʬÊì¤ò½é´ü²½
double[] tmpMolecule = new double[collectPeriod];
for ( int i = 0; i < collectPeriod; i++ ) {
tmpMolecule[i] = 0;
}
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤ò½é´ü²½
double[] slowStochasticsSD = new double[period];
for ( int i = 0; i < period; i++ ) {
slowStochasticsSD[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
initArchivedDataAccess(collectPeriod);
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î¼èÆÀ´ü´Ö¤òÊäÀµ
setPeriod(collectPeriod);
// °ì»þŪ¤ÊʬÊì¤ò¼èÆÀ
tmpMolecule = getFastStochasticsD();
// ´ü´Ö¤òºÆÀßÄê
setPeriod(backupPeriod);
// ʬÊì¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
for ( int j = 0; j < daysOfSlowStochasticsSD; j++ ) {
molecule[i] += tmpMolecule[i+j];
}
}
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
slowStochasticsSD[i] = molecule[i]/(double)daysOfSlowStochasticsSD;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return slowStochasticsSD;
}
}
¤Ê¡Ä¤Ê¤²¤¨¡Ä¡Ê´À¡Ë
¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç³Æ¼ï¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤Î´ðËܼèÆÀ´ü´Ö¤òÀßÄꤹ¤ë¤è¤¦¤Ë¤·¡ÊÎ㤨¤ÐRSI¤Ç¤¢¤ì¤Ð14Æü¡Ë¡¢¤½¤ì¤¾¤ì¤ÎÃͤò¥»¥Ã¥È¡¢¼èÆÀ¤¹¤ë¤¿¤á¤Î¥»¥Ã¥¿¡¢¥²¥Ã¥¿¤òÍѰդ·¤Þ¤¹¡£
¤Þ¤¿¡¢Á°²óºîÀ®¤·¤¿¥¢¡¼¥«¥¤¥Ö¥Ç¡¼¥¿¤Ø¤Î¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤¹¤ëºÝ¤Ë¡¢ÆüÉÕ¡ÊYYYYMMDD¡Ë»ØÄê¤Î¥Ç¡¼¥¿¥µ¡¼¥Á¤ò¤¹¤ë¤Î¤«¡¢X±Ä¶ÈÆüÁ°¤È¤¤¤Ã¤¿¥¿¥¤¥×¤Ç»ØÄꤷ¤¿¥Ç¡¼¥¿¥µ¡¼¥Á¤ò¤¹¤ë¤Î¤«¤ò·è¤á¤Æ¤ª¤¯¤è¤¦¤Ë¤·¤Þ¤¹¡£
¤¢¤È¤Ï¡¢³Æ¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤ò·×»»¤¹¤ë¼°¤òÁȤ߹þ¤á¤Ð´°À®¤Ç¤¹¡£
¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤Î»»½Ð¼°¤Ï¤³¤Á¤é¤Î¥µ¥¤¥È¤Ê¤É¤ò»²¹Í¤Ë¤¹¤ì¤Ð¡¢¤ï¤«¤ê¤ä¤¹¤¤¤Ç¤·¤ç¤¦¡£
°Ê¾å¤ÎÀâÌÀ¤Ç¤ÏÂçʬ¤Ï¤·¤ç¤Ã¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤³¤Ç¤â¤½¤ó¤Ê¤ËÆñ¤·¤¤¤³¤È¤Ï¤ä¤Ã¤Æ¤¤¤Ê¤¤¡Ê¤Ï¤º¡Ë¤Ç¤¹¤Î¤Ç¡¢¥½¡¼¥¹¥³¡¼¥É¤ò¤¶¤Ã¤È¤ª¤Ã¤Æ¤¤¤¿¤À¤±¤ì¤Ð¡¢Íý²ò¤Ç¤¤ë¤«¤È»×¤¤¤Þ¤¹¡£

¿ïʬ¤È´ü´Ö¤¬¤¢¤¤¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¡¢²¿¤ò¤ä¤Ã¤Æ¤¤¤¿¤Î¤«¤¹¤Ã¤«¤ê˺¤ì¤Æ¤·¤Þ¤¤¤½¤¦¤Ê¤Î¤Ç¤¹¤¬¡Ê´À¡Ë¡¢³µÍ׿ޤǤ¤¤¦¤È¡¢³ô¼°¥Ç¡¼¥¿»²¾Èµ¡Ç½¡Ê¢¡Ë¤òºî¤ê¤³¤ó¤Ç¤¤¤ë¤È¤³¤í¤Ç¤¹¤Í¡£
º£²ó¤Ï¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à¤òºîÀ®¤·¤Æ¤¤¤¤Þ¤¹¡£
¡ÊUML¿Þ¤Ï¤³¤ó¤Ê´¶¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£¡Ë

¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤È¤¤¤¦¤È¡¢¤½¤ì¤³¤½¤µ¤Þ¤¶¤Þ¤Ê¤â¤Î¤¬¤¢¤ë¤Î¤Ç¤¹¤¬¡¢º£²ó¤Ï°Üưʿ¶Ñ¡¢°Üưʿ¶ÑЪΥΨ¡¢RSI¡¢¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹¡ÊFast/Slow¡Ë¤¢¤¿¤ê¤ò¼ÂÁõ¤·¤è¤¦¤È»×¤¤¤Þ¤¹¡£
Àè¤Û¤É¤ÎUML¿Þ¤ò¸µ¤Ë¼ÂºÝ¤Ë¥³¡¼¥Ç¥£¥ó¥°¤·¤Æ¤¤¤¯¤È¤³¤ó¤Ê´¶¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
¡Ê¤Á¤ç¤Ã¤ÈŤ¤¤Ç¤¹¤¬Ž¥Ž¥Ž¥¡Ë
// *********************************************
// ¥×¥í¥°¥é¥à̾¡§TechnicalDataAccess.java
// ¥×¥í¥°¥é¥à³µÍס§¥Æ¥¯¥Ë¥«¥ë¡¦¥Ç¡¼¥¿¤Ë¥¢¥¯¥»¥¹¤¹¤ë
// *********************************************
// ¥Ñ¥Ã¥±¡¼¥¸¡§mdp.data
// *********************************************
package mdp.data;
// *********************************************
// ³Æ¼ï¥¤¥ó¥Ý¡¼¥È
// *********************************************
import util.Utility;
class TechnicalDataAccess extends DataAccess {
// *********************************************
// ¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤ÎÄêµÁ
// *********************************************
// ¾Ú·ô¥³¡¼¥É
private int code;
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö
private int daysOfAverage;
// RSI¤Î»»½Ð´ü´Ö
private int daysOfRSI;
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤Î»»½Ð´ü´Ö
private int daysOfFastStochasticsK;
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î»»½Ð´ü´Ö
private int daysOfFastStochasticsD;
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤Î»»½Ð´ü´Ö
private int daysOfSlowStochasticsSD;
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý·¿¥ª¥Ö¥¸¥§¥¯¥È
private ArchivedDataAccess ada;
// *********************************************
// ¥³¥ó¥¹¥È¥é¥¯¥¿¤ÎÄêµÁ
// *********************************************
TechnicalDataAccess(int code) {
this.code = code;
this.daysOfAverage = 14;
this.daysOfRSI = 14;
this.daysOfFastStochasticsK = 9;
this.daysOfFastStochasticsD = 3;
this.daysOfSlowStochasticsSD = 3;
}
// *********************************************
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½¤¹¤ë
// *********************************************
private void initArchivedDataAccess(int period) {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹À¸À®
ada = new ArchivedDataAccess(code);
// ÆüÉÕ¤ÈX±Ä¶ÈÆüÁ°¤ÎÀßÄê
if ( date > 0 ) {
ada.setDate(date);
} else if ( daysAgo > 0 ) {
ada.setDaysAgo(daysAgo);
}
// ´ü´Ö¤ÎÀßÄê
ada.setPeriod(period);
}
// *********************************************
// Á°ÆüÈæ¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int[] getCompDayBefore() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// °ì»þŪ¤Ê½ªÃÍÊݸÊÑ¿ô¤ò½é´ü²½
// ¢¨ÀßÄꤵ¤ì¤Æ¤¤¤ë´ü´Ö¤è¤ê1Æü¿¤¯¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
int[] tmpEndValue = new int[period+1];
for (int i = 0; i < period+1; i++) {
tmpEndValue[i] = -1;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨ÀßÄꤵ¤ì¤Æ¤¤¤ë´ü´Ö¤è¤ê1Æü¿¤¯¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(period+1);
// Á°ÆüÈæ½é´ü²½
int[] compDayBefore = new int[period];
for (int i = 0; i < period; i++) {
compDayBefore[i] = 0;
}
// ½ªÃͼèÆÀ
tmpEndValue = ada.getEndValue();
// Á°ÆüÈæ¼èÆÀ
for (int i = 0; i < period; i++) {
compDayBefore[i] = tmpEndValue[i] - tmpEndValue[i+1];
}
// Ìá¤êÃͥ꥿¡¼¥ó
return compDayBefore;
}
// *********************************************
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfAverage(int daysOfAverage) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfAverage = daysOfAverage;
}
// *********************************************
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfAverage() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfAverage;
}
// *********************************************
// RSI¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfRSI(int daysOfRSI) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfRSI = daysOfRSI;
}
// *********************************************
// RSI¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfRSI() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfRSI;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfFastStochasticsK(int daysOfFastStochasticsK) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfFastStochasticsK = daysOfFastStochasticsK;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfFastStochasticsK() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfFastStochasticsK;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfFastStochasticsD(int daysOfFastStochasticsD) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfFastStochasticsD = daysOfFastStochasticsD;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfFastStochasticsD() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfFastStochasticsD;
}
// *********************************************
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤Î»»½Ð´ü´Ö¤ò¥»¥Ã¥È¤¹¤ë
// *********************************************
protected void setDaysOfSlowStochasticsSD(int daysOfSlowStochasticsSD) {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
this.daysOfSlowStochasticsSD = daysOfSlowStochasticsSD;
}
// *********************************************
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤Î»»½Ð´ü´Ö¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDaysOfSlowStochasticsSD() {
// Ê¿¶ÑÃͤλ»½Ð´ü´Ö¤ò¥»¥Ã¥È
return daysOfSlowStochasticsSD;
}
// *********************************************
// ÃͲ¼¤¬¤êÉý¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getDownValue() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// Ã;夬¤êÉý¤ò½é´ü²½
int downValue = 0;
// Á°ÆüÈæ¼èÆÀ
int[] compDayBefore = getCompDayBefore();
// Ã;夬¤êÉý¤ò¼èÆÀ
for (int i = 0; i < period; i++) {
if (compDayBefore[i] < 0) {
downValue += compDayBefore[i];
}
}
// Ìá¤êÃͥ꥿¡¼¥ó
return downValue;
}
// *********************************************
// Ã;夬¤êÉý¤ò¼èÆÀ¤¹¤ë
// *********************************************
protected int getUpValue() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// Ã;夬¤êÉý¤ò½é´ü²½
int upValue = 0;
// Á°ÆüÈæ¼èÆÀ
int[] compDayBefore = getCompDayBefore();
// Ã;夬¤êÉý¤ò¼èÆÀ
for (int i = 0; i < period; i++) {
if (compDayBefore[i] > 0) {
upValue += compDayBefore[i];
}
}
// Ìá¤êÃͥ꥿¡¼¥ó
return upValue;
}
// *********************************************
// Ê¿¶ÑÃͤò¼èÆÀ¤¹¤ë
// *********************************************
protected double[] getAverage() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfAverage´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfAverage());
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// Ê¿¶ÑÃͤò½é´ü²½
double[] average = new double[period];
for (int i = 0; i < period; i++) {
average[i] = -1.0;
}
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < period; i++ ) {
// Ê¿¶ÑÃͤò¼èÆÀ
average[i] = Utility.getAverage(ada.getEndValue());
// daysAgo¤ò1ÆüÁý¤ä¤¹
ada.setDaysAgo(ada.getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[period];
tmpDate = ada.getDateValue();
for ( int i = 0; i < period; i++ ) {
// ÆüÉÕ¤òÀßÄê
ada.setDate(tmpDate[i]);
// Ê¿¶ÑÃͤò¼èÆÀ
average[i] = Utility.getAverage(ada.getEndValue());
}
}
// Ìá¤êÃͥ꥿¡¼¥ó
return average;
}
// *********************************************
// Ê¿¶ÑЪΥΨ¤ò¼èÆÀ
// *********************************************
protected double[] getDistFromAverage() {
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfAverage´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfAverage());
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ½ªÃͤò¼èÆÀ
int[] endValue = ada.getEndValue();
// Ê¿¶ÑЪΥΨ¤ò½é´ü²½
double[] distFromAverage = new double[period];
for ( int i = 0; i < period; i++ ) {
distFromAverage[i] = 0.0;
}
// Ê¿¶ÑÃͤò¼èÆÀ
double[] average = getAverage();
// Ê¿¶ÑЪΥΨ¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
distFromAverage[i] = (((double)endValue[i]-average[i])/average[i])*100.0;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return distFromAverage;
}
// *********************************************
// RSI¤ò¼èÆÀ
// *********************************************
protected double[] getRSI() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ´ü´Ö¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×
int backupPeriod = period;
// RSI»»½Ð´ü´Ö
int daysOfRSI = getDaysOfRSI();
// Ã;夬¤êÉý¤Î¹ç·×¤ò½é´ü²½
int[] upValue = new int[period];
for ( int i = 0; i < period; i++ ) {
upValue[i] = 0;
}
// ÃͲ¼¤¬¤êÉý¤Î¹ç·×¤ò½é´ü²½
int[] downValue = new int[period];
for ( int i = 0; i < period; i++ ) {
downValue[i] = 0;
}
// RSI¤ò½é´ü²½
double[] rsi = new double[period];
for ( int i = 0; i < period; i++ ) {
rsi[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfRSI´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(daysOfRSI);
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < period; i++ ) {
// ´ü´Ö¤òRSI¼èÆÀ´ü´Ö¤ËÀßÄꤹ¤ë
setPeriod(daysOfRSI);
// Ã;夬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
upValue[i] = getUpValue();
// ÃͲ¼¤¬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
downValue[i] = getDownValue();
// ´ü´Ö¤ò¸µ¤ËÌ᤹
setPeriod(backupPeriod);
// daysAgo¤ò1ÆüÁý¤ä¤¹
setDaysAgo(getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[period];
tmpDate = ada.getDateValue();
for ( int i = 0; i < period; i++ ) {
// ÆüÉÕ¤òÀßÄê
setDate(tmpDate[i]);
// ´ü´Ö¤òRSI¼èÆÀ´ü´Ö¤ËÀßÄꤹ¤ë
setPeriod(daysOfRSI);
// Ã;夬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
upValue[i] = getUpValue();
// ÃͲ¼¤¬¤êÉý¤Î¹ç·×¤ò¼èÆÀ
downValue[i] = getDownValue();
// ´ü´Ö¤ò¸µ¤ËÌ᤹
setPeriod(backupPeriod);
}
}
// RSI¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
rsi[i] = ((double)upValue[i]/(double)(upValue[i]+Math.abs(downValue[i])))*100;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return rsi;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤ò¼èÆÀ
// *********************************************
protected double[] getFastStochasticsK() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
initArchivedDataAccess(period);
// ½ªÃͤò¼èÆÀ
int[] endValue = ada.getEndValue();
// °ÂÃͤò½é´ü²½
int[] lowValue = new int[period];
for ( int i = 0; i < period; i++ ) {
lowValue[i] = -1;
}
// ¹âÃͤò½é´ü²½
int[] highValue = new int[period];
for ( int i = 0; i < period; i++ ) {
highValue[i] = -1;
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%K¤ò½é´ü²½
double[] fastStochasticsK = new double[period];
for ( int i = 0; i < period; i++ ) {
fastStochasticsK[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfFastStochasticsK´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfFastStochasticsK());
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < period; i++ ) {
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
// daysAgo¤ò1ÆüÁý¤ä¤¹
ada.setDaysAgo(ada.getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[period];
tmpDate = ada.getDateValue();
for ( int i = 0; i < period; i++ ) {
// ÆüÉÕ¤òÀßÄê
ada.setDate(tmpDate[i]);
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
}
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹¡óK¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
fastStochasticsK[i] = ((double)endValue[i]-(double)lowValue[i])/((double)highValue[i]-(double)lowValue[i])*100.0;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return fastStochasticsK;
}
// *********************************************
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤ò¼èÆÀ
// *********************************************
protected double[] getFastStochasticsD() {
// ÆüÉÕ¤ò¼èÆÀ
int date = getDate();
// X±Ä¶ÈÆüÁ°¤ò¼èÆÀ
int daysAgo = getDaysAgo();
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// period´ü´Ö¤ËdaysOfFastStochasticsD´ü´Ö¤ò²Ã»»¤·¤Æ1°ú¤¤¤¿´ü´Ö¤ò¼èÆÀ
int collectPeriod = period+getDaysOfFastStochasticsD()-1;
// ʬÊì¤ò½é´ü²½
int[] molecule = new int[period];
for ( int i = 0; i < period; i++ ) {
molecule[i] = 0;
}
// ʬ»Ò¤ò½é´ü²½
int[] denominator = new int[period];
for ( int i = 0; i < period; i++ ) {
denominator[i] = 0;
}
// °ÂÃͤò½é´ü²½
int[] lowValue = new int[collectPeriod];
for ( int i = 0; i < collectPeriod; i++ ) {
lowValue[i] = -1;
}
// ¹âÃͤò½é´ü²½
int[] highValue = new int[collectPeriod];
for ( int i = 0; i < collectPeriod; i++ ) {
highValue[i] = -1;
}
// ½ªÃͤò½é´ü²½
int[] endValue = new int[collectPeriod];
for ( int i = 0; i < collectPeriod; i++) {
endValue[i] = -1;
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤ò½é´ü²½
double[] fastStochasticsD = new double[period];
for ( int i = 0; i < period; i++ ) {
fastStochasticsD[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
initArchivedDataAccess(collectPeriod);
// ½ªÃͤò¼èÆÀ
endValue = ada.getEndValue();
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
// ¢¨daysOfFastStochasticsK´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
initArchivedDataAccess(getDaysOfFastStochasticsK());
// daysAgo¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
if ( daysAgo > 0 ) {
for ( int i = 0; i < collectPeriod; i++ ) {
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
// daysAgo¤ò1ÆüÁý¤ä¤¹
ada.setDaysAgo(ada.getDaysAgo()+1);
}
// date¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç
} else if ( date > 0 ) {
// ÆüÉÕÇÛÎóÊÝ´ÉÍѰì»þÊÑ¿ô¤òÀßÄê
int[] tmpDate = new int[collectPeriod];
tmpDate = ada.getDateValue();
for ( int i = 0; i < collectPeriod; i++ ) {
// ÆüÉÕ¤òÀßÄê
ada.setDate(tmpDate[i]);
// °ÂÃͤò¼èÆÀ
lowValue[i] = Utility.getMin(ada.getLowValue());
// ¹âÃͤò¼èÆÀ
highValue[i] = Utility.getMax(ada.getHighValue());
}
}
// ʬÊì¤Èʬ»Ò¤ò·×»»
for ( int i = 0; i < period; i++ ) {
for ( int j = 0; j < daysOfFastStochasticsD; j++ ) {
molecule[i] += (endValue[i+j]-lowValue[i+j]);
denominator[i] += (highValue[i+j]-lowValue[i+j]);
}
}
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
fastStochasticsD[i] = ((double)molecule[i]/(double)denominator[i])*100;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return fastStochasticsD;
}
// *********************************************
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤ò¼èÆÀ
// *********************************************
protected double[] getSlowStochasticsSD() {
// ´ü´Ö¤ò¼èÆÀ
int period = Math.abs(getPeriod());
// ´ü´Ö¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×
int backupPeriod = period;
// daysOfSlowStochasticsSD´ü´Ö¤ò¼èÆÀ
int daysOfSlowStochasticsSD = getDaysOfSlowStochasticsSD();
// period´ü´Ö¤ËdaysOfSlowStochasticsSD´ü´Ö¤ò²Ã»»¤·¤Æ1°ú¤¤¤¿´ü´Ö¤ò¼èÆÀ
int collectPeriod = period+daysOfSlowStochasticsSD-1;
// ʬÊì¤ò½é´ü²½
double[] molecule = new double[period];
for ( int i = 0; i < period; i++ ) {
molecule[i] = 0;
}
// °ì»þŪ¤ÊʬÊì¤ò½é´ü²½
double[] tmpMolecule = new double[collectPeriod];
for ( int i = 0; i < collectPeriod; i++ ) {
tmpMolecule[i] = 0;
}
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤ò½é´ü²½
double[] slowStochasticsSD = new double[period];
for ( int i = 0; i < period; i++ ) {
slowStochasticsSD[i] = -1.0;
}
// ¥¢¡¼¥«¥¤¥Ö¡¦¥Ç¡¼¥¿¡¦¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤ò½é´ü²½
initArchivedDataAccess(collectPeriod);
// ¥Õ¥¡¡¼¥¹¥È¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹%D¤Î¼èÆÀ´ü´Ö¤òÊäÀµ
setPeriod(collectPeriod);
// °ì»þŪ¤ÊʬÊì¤ò¼èÆÀ
tmpMolecule = getFastStochasticsD();
// ´ü´Ö¤òºÆÀßÄê
setPeriod(backupPeriod);
// ʬÊì¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
for ( int j = 0; j < daysOfSlowStochasticsSD; j++ ) {
molecule[i] += tmpMolecule[i+j];
}
}
// ¥¹¥í¡¼¥¹¥È¥¥ã¥¹¥Æ¥£¥¯¥¹SD¤ò¼èÆÀ
for ( int i = 0; i < period; i++ ) {
slowStochasticsSD[i] = molecule[i]/(double)daysOfSlowStochasticsSD;
}
// Ìá¤êÃͥ꥿¡¼¥ó
return slowStochasticsSD;
}
}
¤Ê¡Ä¤Ê¤²¤¨¡Ä¡Ê´À¡Ë
¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç³Æ¼ï¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤Î´ðËܼèÆÀ´ü´Ö¤òÀßÄꤹ¤ë¤è¤¦¤Ë¤·¡ÊÎ㤨¤ÐRSI¤Ç¤¢¤ì¤Ð14Æü¡Ë¡¢¤½¤ì¤¾¤ì¤ÎÃͤò¥»¥Ã¥È¡¢¼èÆÀ¤¹¤ë¤¿¤á¤Î¥»¥Ã¥¿¡¢¥²¥Ã¥¿¤òÍѰդ·¤Þ¤¹¡£
¤Þ¤¿¡¢Á°²óºîÀ®¤·¤¿¥¢¡¼¥«¥¤¥Ö¥Ç¡¼¥¿¤Ø¤Î¥¢¥¯¥»¥¹½èÍý¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤¹¤ëºÝ¤Ë¡¢ÆüÉÕ¡ÊYYYYMMDD¡Ë»ØÄê¤Î¥Ç¡¼¥¿¥µ¡¼¥Á¤ò¤¹¤ë¤Î¤«¡¢X±Ä¶ÈÆüÁ°¤È¤¤¤Ã¤¿¥¿¥¤¥×¤Ç»ØÄꤷ¤¿¥Ç¡¼¥¿¥µ¡¼¥Á¤ò¤¹¤ë¤Î¤«¤ò·è¤á¤Æ¤ª¤¯¤è¤¦¤Ë¤·¤Þ¤¹¡£
¤¢¤È¤Ï¡¢³Æ¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤ò·×»»¤¹¤ë¼°¤òÁȤ߹þ¤á¤Ð´°À®¤Ç¤¹¡£
¥Æ¥¯¥Ë¥«¥ë¥Ç¡¼¥¿¤Î»»½Ð¼°¤Ï¤³¤Á¤é¤Î¥µ¥¤¥È¤Ê¤É¤ò»²¹Í¤Ë¤¹¤ì¤Ð¡¢¤ï¤«¤ê¤ä¤¹¤¤¤Ç¤·¤ç¤¦¡£
°Ê¾å¤ÎÀâÌÀ¤Ç¤ÏÂçʬ¤Ï¤·¤ç¤Ã¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤³¤Ç¤â¤½¤ó¤Ê¤ËÆñ¤·¤¤¤³¤È¤Ï¤ä¤Ã¤Æ¤¤¤Ê¤¤¡Ê¤Ï¤º¡Ë¤Ç¤¹¤Î¤Ç¡¢¥½¡¼¥¹¥³¡¼¥É¤ò¤¶¤Ã¤È¤ª¤Ã¤Æ¤¤¤¿¤À¤±¤ì¤Ð¡¢Íý²ò¤Ç¤¤ë¤«¤È»×¤¤¤Þ¤¹¡£
²»³Ú¥¿¥¤¥¢¥Ã¥×¾ðÊó¤È³Ú¶Ê¤Î¥Þ¥Ã¥Á¥ó¥°¥µ¡¼¥Ó¥¹¡ÊPT3¡Ë
Á°²ó¤Îµ»ö¤Î³¤¤Ç¤¹¡£

Musicpro.jp¤Î¥ª¡¼¥×¥óͽÄêÆü¡Ê9·î20Æü¡Ë¤ËÀ褬¤±¡¢²ñ°÷ÅÐÏ¿¤Î¼õÉÕ¤¬³«»Ï¤µ¤ì¤Þ¤·¤¿¡£
¤µ¤Ã¤½¤¯¥µ¥¤¥È¤Ë¥¢¥¯¥»¥¹¤·¤Æ¡¢¸Ä¿Í²ñ°÷¤È¤·¤ÆÅÐÏ¿¤ò¿½ÀÁ¤·¤Æ¤ß¤¿¤Î¤Ç¤¹¤¬¡¢½»½ê¡¢»á̾¡¢¥Û¡¼¥à¥Ú¡¼¥¸Åù¤Î¥Ñ¡¼¥½¥Í¥ë¤òÆþÎϤ·¡¢¡Ö¥×¥í¤Î²»³Ú²È¤È¤·¤Æ¤Î³èư¼ÂÀӡפòÆþÎϤ¹¤ë¤è¤¦¤Ê·Á¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¢¿½ÀÁ¸å3Æü´ÖÄøÅÙ¤ÇÊÖ¿®¤¬¤¢¤ë¤½¤¦¤Ç¤¹¡£
¡Ö¥×¥í¤Î²»³Ú²È¤È¤·¤Æ¤Î³èư¼ÂÀӡפǤ¹¤«¡Ä¡Ê¶ì¾Ð¡Ë
¤½¤ó¤Ê¤Î¤Ê¤¤¤Ê¤¡¡Ä
¤Þ¤¡¡¢¿§¡¹½ñ¤¹þ¤ó¤Ç¤ß¤Þ¤·¤¿¤¬¡¢¿½ÀÁÄ̤é¤Ê¤¤¤À¤í¤¦¤Ê¤¡¡Ä¡£
¤³¤ì¤ÇÄ̤俤éÄ̤俤ÇÌÌÇò¤¤¤Î¤À¤±¤ì¤É¤â¡£
¶½Ì£¤Î¤¢¤ëÊý¤Ï¡¢°ìÈ̲ñ°÷¤Ç¤¹¤È¡¢ÌµÎÁ¤Î¥µ¡¼¥Ó¥¹¤Ê¤Î¤Ç¡¢¿½ÀÁ¤¹¤ë¤À¤±¤Ç¤â¿½ÀÁ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

Musicpro.jp¤Î¥ª¡¼¥×¥óͽÄêÆü¡Ê9·î20Æü¡Ë¤ËÀ褬¤±¡¢²ñ°÷ÅÐÏ¿¤Î¼õÉÕ¤¬³«»Ï¤µ¤ì¤Þ¤·¤¿¡£
¤µ¤Ã¤½¤¯¥µ¥¤¥È¤Ë¥¢¥¯¥»¥¹¤·¤Æ¡¢¸Ä¿Í²ñ°÷¤È¤·¤ÆÅÐÏ¿¤ò¿½ÀÁ¤·¤Æ¤ß¤¿¤Î¤Ç¤¹¤¬¡¢½»½ê¡¢»á̾¡¢¥Û¡¼¥à¥Ú¡¼¥¸Åù¤Î¥Ñ¡¼¥½¥Í¥ë¤òÆþÎϤ·¡¢¡Ö¥×¥í¤Î²»³Ú²È¤È¤·¤Æ¤Î³èư¼ÂÀӡפòÆþÎϤ¹¤ë¤è¤¦¤Ê·Á¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¢¿½ÀÁ¸å3Æü´ÖÄøÅÙ¤ÇÊÖ¿®¤¬¤¢¤ë¤½¤¦¤Ç¤¹¡£
¡Ö¥×¥í¤Î²»³Ú²È¤È¤·¤Æ¤Î³èư¼ÂÀӡפǤ¹¤«¡Ä¡Ê¶ì¾Ð¡Ë
¤½¤ó¤Ê¤Î¤Ê¤¤¤Ê¤¡¡Ä
¤Þ¤¡¡¢¿§¡¹½ñ¤¹þ¤ó¤Ç¤ß¤Þ¤·¤¿¤¬¡¢¿½ÀÁÄ̤é¤Ê¤¤¤À¤í¤¦¤Ê¤¡¡Ä¡£
¤³¤ì¤ÇÄ̤俤éÄ̤俤ÇÌÌÇò¤¤¤Î¤À¤±¤ì¤É¤â¡£
¶½Ì£¤Î¤¢¤ëÊý¤Ï¡¢°ìÈ̲ñ°÷¤Ç¤¹¤È¡¢ÌµÎÁ¤Î¥µ¡¼¥Ó¥¹¤Ê¤Î¤Ç¡¢¿½ÀÁ¤¹¤ë¤À¤±¤Ç¤â¿½ÀÁ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£












