پیش‌بینی بازار سهام با استفاده از توییتر؟!


آیا مردم به داده‌های توییتر اهمیت می‌دهند؟

جالب است بدانیم سرویس فروش داده‌های توییتر در سال ۲۰۱۹، ۵۰۰ میلیون دلار درآمد داشته است، نزدیک به ۲۰ درصد از درآمد کل توییتر!

چرا؟

امروزه معامله‌گران به این نتیجه رسیده‌اند که تاثیر شبکه‌های اجتماعی در قیمت سهام دیگر در حد یک نظریه نیست، یک واقعیت است، و توییتر پلتفرمی است که اخبار قابل اعتمادی ارایه می‌دهد.

چطور می‌شود از توییتر برای پیش‌بینی بازار سهام استفاده کرد؟‌

به طور کلی ما از یادگیری ماشینی برای اندازه‌گیری احساس کلی توییت‌ها استفاده می‌کنیم تا بتوانیم پیش‌بینی کنیم که یک سهم چه حرکتی خواهد کرد. مثلا، اگر در یک توییت، کلمات مثبت بیشتر از کلمات منفی باشند، الگوریتم ما امتیاز بیشتری به آن توییت اختصاص می‌دهد و پیش‌بینی می‌کند که قیمت سهم مورد نظر بالا خواهد رفت.

چطور یادگیری توسط مدل انجام میگیرد؟

برای این‌که بفهمم احساسات توییتری چگونه به قیمت یک سهم مرتبط می‌شود، نیازمند یک مجموعه‌داده غنی از توییت‌های مرتبط با شرکت‌های مختلف هستیم تا بتوانیم بفهمیم که امکان پیش‌بینی قیمت با استفاده از داده‌های آنلاین از احساسات و جو غالب وجود دارد یا خیر. به علاوه، فاکتور‌های مختلف در توییتر، مثل تعداد لایک و فالوور می‌توانند نماگر‌های خوبی برای فهم این باشند که یک توییت چقدر می‌تواند در بازار بازخورد داشته باشد، چه در یک صنعت و چه در یک شرکت سهامی.

قبل از شرح مراحل کار، مهم است تا این حقیقت را با خود مرور کنیم که حتی بهترین تحلیلگران هم نمی‌توانند مدلی بسازند که مقدار R-Squared حدود ۴-۵ درصد داشته باشد. حتی با صد‌ها فاکتور پیش‌بینی کننده(‌Predictor). پس آیا ما می‌توانیم فقط با استفاده از توییتر از آن‌ها جلو بزنیم؟

مراحل زیر رویکرد ما برای فراهم کردن ساختار داده را بیان می‌کند:

قدم‌ اول:‌ دریافت دادگان از توییتر

مجموعه داده‌های مورد استفاده ما از followthehashtag.com دریافت شده؛ مرجعی غنی از توییت‌های مرتبط با شرکت‌ها لیست شده در NASDAQ 100 بر مبنای تگ‌های استفاده شده در توییتر.

این مجموعه‌داده‌ها توسط محققان سراسر جهان استفاده می‌شود و نزدیک به ۱ میلیون توییت را شامل می‌شود. در این پروژه، از توییت‌های ۴ شرکت در بازه‌ی زمانی ۲۶ام مارچ ۲۰۱۶ تا ۱۵ام جون ۲۰۱۶ استفاده شده.

قدم دوم:‌ محاسبه امتیاز احساسی توییت‌ها

ما از کتابخانه (VADER (Valence Aware Dictionary and Sentiment Reasoner برای تشخیص احساس هر یک از توییت‌ها استفاده کرده‌ایم. VADER یک ابزار تحلیلی واژگانی و قاعده‌محور است که به طور مشخص برای تحلیل احساسات در شبکه‌های مجازی توسعه داده شده است.

به طور کلی احساس یک توییت در قالب درصدی از فاکتور‌های زیر بیان می‌شود:

مثبت(Positive):‌ توییت چقدر خوشبینانه و مثبت است.

منفی:(Negative)‌ توییت چه مقدار بدبینانه و منفی است.

خنثی(Neutral):‌ توییت چه مقدار خنثی است.

ترکیبی(Compound): اندازه گیری اختصاصی از یه عامل بالا

امتیاز احساسی(Sentiment Score):‌ ضرب مقدار فاکتور احساس ترکیبی و تعداد دنبال‌کنندگان حسابی که آن توییت را منتشر کرده.

این اندازه گیری به ما اجازه خواهد داد تا اهمیت و تاثیر توییت‌ها را با توجه به تعداد دنبال‌کنندگان افراد به دست بیاوریم.

قدم سوم:‌ گروه‌بندی کلی امتیازات احساسی بر اساس تاریخ برای هر شرکت.

قدم چهارم:‌ دریافت اطلاعات قیمتی از سرویس مالی یاهو:

با استفاده از رابط‌های برنامه نویسی یاهو، داده‌های قیمتی هر سهم را در ۷۴ روزی که داده‌های توییتر ما در آن است دریافت می‌کنیم.

Yahoo Finance’s API
Yahoo Finance’s API


قدم پنجم:‌ صدور سیگنال خرید و فروش

در ابتدا اقدام به ساخت یک سیگنال خرید و فروش پایه می‌کنیم. در واقع سیگنال پایه رفتار اولیه‌ای است که برای خرید و فروش یک سهم تجویز می‌شود. بعد با استفاده از الگوریتم‌های هوش مصنوعی به پیش‌بینی اصلی دست پیدا می‌کنیم.

اضافه کردن سیگنال خرید و فروش بر اساس امتیاز احساسی
اضافه کردن سیگنال خرید و فروش بر اساس امتیاز احساسی

قدم هفتم:‌ اجزا کردن ۳۶ الگوریتم یادگیری ماشینی طبقه‌بندی شده(‌Machine learning binary classification models)

با توجه به رویکرد استاندارد برای اجرای مدل‌های هوش مصنوعی و دستیابی به دقت بیشتر، پیش‌بینی مطمعن‌تر و جلوگیری از بیش‌فرازش(Overfitting)، مجموعه‌دادگان به دو قسمت یادگیری(Train) و تست(Test) تقسیم شده است و از آنجایی که با یک سری زمانی طرف هستیم، منطقی است تا آن را با توجه به رنج زمانی تقسیم کنیم.

مدل‌ها که استفاده شده، الگوریتم‌های مختلف مانند: KNN، رگرسیون لجستیک(Logistic Regression)، درخت تصمیم‌گیری(Decision Tree)، جنگل تصادفی، SVM و ANN بوده‌اند.

قدم هشتم: پیش‌بینی قیمت سهام

فرمولی پیچیده بر اساس مدل‌های یادگیری شده از احساس توییت‌ها استفاده شده تا قیمت سهام را پیش‌بینی کنیم!

استفاده از مدل برای پول درآوردن!

در نهایت به گزارش دقت مدل‌هایمان در داده‌های تست چهار شرکت انتخاب شده می‌پردازیم. و نمودار‌های قیمت پیشبینی شده و قیمت واقعی در بخش تست را می‌بینیم.

Electronic Arts (EA), Cerner, Vodafone, T-Mobile
Electronic Arts (EA), Cerner, Vodafone, T-Mobile

نمودار دقت، یکی از سنجه‌های عموم برای شناختن کارایی کلی یک الگوریتم هوش مصنوعی است در ادامه می‌بینیم هر الگوریتم در چهار شرکت انتخابی به چه دقتی دست یافته:

AI, Neural Network & Machine Learning
AI, Neural Network & Machine Learning

Electronic Arts (EA)

نمودار قیمت واقعی و قیمت پیش‌بینی شده
نمودار قیمت واقعی و قیمت پیش‌بینی شده

Vodafone Group Plc (VOD)

T-Mobile US (TMUS)

CERN

خرد جمعی

به طور کلی، کسی قیمت سهم را به خوبی پیش‌بینی خواهد کرد که از الگوریتم یادگیری ماشینی بهینه‌ و همچنین فاکتور‌های پیش‌بینی کننده خاص و پرشماری را استفاده کند، در حالی که ما می‌توانیم تمام این فاکتور‌ها را در آینهء همین خرد جمعی داشته باشیم.

درحقیقت مدل ما با استفاده از قدرت شناخت احساس و حرکت جامعه توانست با دقت بسیار خوبی قیمت بازار سهام را پیش‌بینی کند.

در ادامه مقالات سعی می‌کنیم بازار مبادله ارز و همچنین سهام داخلی را هم با استفاده از این تکنیک بررسی کنیم.

مقاله اصلی:‌ Can We Beat The Stock Market Using Twitter?

ترجمه از محمد مسعودی، گروه مالی صدرا