گام دوم : خطای بین خروجی واقعی و خروجی مطلوب را محاسبه نمایید .
گام سوم : وزنهای ارتباطی باید تطبیق داده شود .
گام چهارم : اگر خطا بزرگتر از حد قابلقبول باشد آنگاه به گام ۱ بروید در غیر این صورت الگوریتم متوقف میشود
نمودار ۳-۱ الگوریتم مدل شبکه عصبی پیشخور
میزان زیادی ورودی در بازار سهام وجود دارد که در قیمت سهام مؤثر است؛ اما همه ورودیها برای سیستم پیشبینی استفاده نمیشود چون اثر آن ها در قیمت بازار سهام مناسب نیست. در سؤال اول، بهمنظور پیش بینی قیمت سهام، برای رویکرد ترکیبی، ۱۶ ورودی شناساییشده که شامل متغیرهای تجزیهوتحلیل بنیادی، متغیرهای تجزیهوتحلیل فنی که بر اساس قیمتهای دو روز قبل قیمت سهام را برای روز پنج پیشبینی میکند که متغیرها عبارتاند از:
قیمت افتتاحیه در روز ۱i-
قیمت افتتاحیه در روز ۲i-
قیمت بالا روزانه در روز ۱-i
قیمت بالا روزانه در روز ۲-i
قیمت پایین روزانه در روز ۱-i
قیمت پایین روزانه در روز ۲-i
قیمت بسته شدن در روز ۱-i
قیمت بسته شدن در روز ۲-i
حجم معاملات در روز ۱-i
حجم معاملات در روز ۲-i
متغیرهای تحلیل بنیادی هستند
قیمت سود سالیانه در سال ۱-i
قیمت سود سالیانه در سال ۲ -i
ارزش دفتری در سال مالی ۱-i
ارزش دفتری در سال مالی ۲ -i
وضعیت مالی یک شرکتهای تجاری در سال ۱-i
وضعیت مالی یک شرکتهای تجاری در سال ۲ –i
برای اجرای روش ترکیبی با شبکه عصبی، مدل اول با ۱۶ ورودی ترکیبی، متغیرهای تجزیهوتحلیل فنی و تجزیهوتحلیل بنیادی آموزش و آزمایش کردند. تعداد نرونهای لایه پنهان را از ۱۸-۲۵ تغیر دادند و درنهایت یک خروجی داشتند و با حلقه تکرار ۵۰۰ هرکدام از مدلها را انجام دادند تا به یک مدلی دست بیابند که کمترین خطا رو با واقعیت داشته باشد. در سؤال دوم این آزمایش را تنها با بهره گرفتن از متغیرهای تجزیهوتحلیل فنی با شبکه عصبی که لایه پنهان را از ۱۰-۱۸ تغیر دادند و آموزش و ازمایش کردند. تا کمترین خطا را داشته باشد. دادههای تست و آموزشی با دقت انتخاب شدند مدل شبکه عصبی با مقایسه مقادیر پیشبینیشده با مقادیر واقعی در طی یک دوره نمونه انجام شد و با مشاهده نتایج دو مدل مختلف بهترین مدل انتخاب شد.
۳-۵٫ نرمالسازی
پیش از پردازش داده ها، داده ها باید نرمالسازی شوند تا توان پیش بینی بالاتر برود؛ بنابراین تبدیلی رویدادههای ورودی به شبکه انجام می شود که داده ها در فاصله [L, H] قرار بگیرند. این کار با بهره گرفتن از رابطه ذیل انجام می شود:
(۳-۱)
در این رابطه مقدار واقعی ورودی شبکه و مقدار نرمال شده متناظر با آن است. و به ترتیب مقادیر کمینه و بیشینه ها میباشند. در این تحقیق داده ها در فاصله [۱,۱-] نرمالسازی شده اند.
پس از انتخاب متغیرها و جمع آوری دادهها، بهمنظور آمادهسازی داده ها برای آموزش وآزمایش ابتدا هر کدام از متغیرها نرمال میگردد تا تاثیر اعداد بزرگ کاهش یابد.
۳-۶٫ الگوریتم آموزش
انتخاب تابع خطا و الگوریتم بهینهسازی در آموزش شبکههای عصبی مصنوعی، بسیار اهمیت دارد؛ زیرا با این انتخاب مناسب، میتوان باعث بهبود پایداری، ناپایداری و یا رهایی از حداقل محلی شود. در حین آموزش، تابع خطا کاهشیافته و وزنهها تعدیل مییابند. کاهش متناسب با روش بهینهسازی بهکاررفته ترتیب داده میشود. از متداولترین روشهای بهینهسازی جهت آموزش شبکههای عصبی، میتوان به قانون دلتا، الگوریتم بولتزمن[۵۵] و الگوریتم پس انتشار خطا اشاره کرد. تابع یادگیری که مورداستفاده قرار میگیرد تابع سیگموئید است:
f(x)=
۳-۷٫ مرحله پیشبینی
وقتیکه شبکه عصبی آموزش داده شد سپس آن برای پیشبینی آماده است . بعد از آموزش با خطای قابلپذیرش وزنها و قرار دادن آن روی شبکه ، ما به شبکه آموزش دادهشده مجموعه داده ورودی قیمت روزی که ما میخواهیم پیشبینی کنیم را می دهیم . شبکه آموزش دادهشده سپس قیمت را با بهره گرفتن از مجموعه داده ورودی پیشبینی میکند که برای پاسخ به سؤال اول ارائه مدل جدیدی برای پیشبینی قیمت سهام با بهره گرفتن از داده های ترکیبی شاخص بازار است.
و برای پاسخ به سؤال دوم پیشبینی قیمت سهام را با بهره گرفتن از شاخصهای تکنیکال به روش شبکه عصبی که برای بررسی میزان خطای آن از روش زیر استفاده میکنیم:
میانگین مجذور خطای پیشبینی | |
مربع میانگین خطای استاندارد نرمال شده | |
میانگین قدر مطلق خطا |