انتخاب پرتفوی از ابتدا تا کنون حول محور مطلوبیت سرمایه گذاران می چرخد. داستان از جایی شروع می شود که تمامی پژوهشگران در پی بالا بردن مطلوبیت سرمایه گذاران در مسئله انتخاب پرتفوی بودند تا در نهایت، هری مارکوویتز و چندی دیگر از محققین در سال 1952 ریسک و بازده را دو عامل مهم در تعیین مطلوبیت سرمایه -گذاران در نظر گرفتند. به این ترتیب که سرمایه گذاران با افزایش بازده و کاهش ریسک پرتفوی به دنبال بالا بردن مطلوبیت خود می باشند. پس می توان نتیجه گرفت که دو عاملی که می تواند در انتخاب پرتفوی نقش مهمی داشته باشد بازده و ریسک پرتفوی می باشند. این مسئله را می توان به صورت برنامه ریزی ریاضی نوشت و آن را به سادگی حل کرد. اما حل این مسئله به تنهایی کافی نمی باشد. به عبارتی دیگر، می توان کمی عقب تر رفت و در انتخاب سهام نیز اقداماتی انجام داد. زیرا مسئله بهینه سازی پرتفوی در نهایت منجر به این می شود که با چه اوزانی سهام مورد نظر خریداری شوند. اما شاید سوال شود که خود این سهام بر چه اساسی خریداری شوند؟ تا کنون عوامل زیادی بر انتخاب سهام در نظر گرفته شده اند. به عنوان مثال بعضی از سرمایه گذاران بر اساس بازده گذشته سهام موجود، سهام مورد نظر خود را انتخاب می نمایند و بعضی دیگر از عامل دیگری همانند نقدشوندگی نیز در انتخاب سهام استفاده می نمایند. همچنین استفاده از تحلیل های بنیادی و بعضا تکنیکال نیز در انتخاب سهام توصیه می گردد. به هر حال بسته به شرایط موجود و میزان دانش سرمایه گذاران، راهکارها و روش های مختلفی برای انتخاب سهام و پرتفوی مورد استفاده قرار می گیرند. اما در نهایت عامل خبرگی می تواند نقش بسیار موثری در انتخاب سهام مورد نظر سرمایه گذاران ایفا کند. بعد از انتخاب سهام مورد نظر، روش های مختلفی برای ایجاد پرتفویی کم ریسک و پر بازده مورد استفاده قرار می گیرد که به ترتیب به صورت مختصر در مورد آنها توضیح داده می شود. روش های حل مسئله بهینه سازی پرتفوی را می توان به دو روش دقیق و جستجو محور تقسیم نمایید که به صورت زیر می باشد.
روش برنامه ریزی خطی
روش برنامه ریزی خطی یکی از انواع روش های دقیق می باشد. این روش بسیار ساده می باشد و هدف نهایی آن کاهش دادن ریسک پرتفوی تا حد ممکن در یک بازده مشخص است. البته باید به یاد داشته باشیم که این روش مسئله را به صورت خطی حل می نماید و عموما می توان با استفاده از روش های غیرخطی نتیجه بهتری بدست آورد.
روش برنامه ریزی غیرخطی ( کوادراتیک)
روش غیرخطی یا درجه دوم، همان روش اصلی مارکوویتز می باشد که با حل آن می توان به پرتفوی بهینه دست یافت. یک از مشکلاتی که این روش های دقیق دارند، وقت گیر بودن آنها می باشد که البته امروزه با وجود کامپیوترهای پر سرعت، این مشکل تقریبا رفع شده است. با حل مسئله مارکوویتز می توان یک پرتفوی و اگر این مسئله را برای چند پرتفوی (با ریسک و بازده متفاوت) حل نمایید، می¬توان مرزکارا را با استفاده از آن بدست آورد.
مسائل جدید
یکی از مفروضاتی که در مسئله مارکوویتز وجود دارد، نرمال بودن بازده های سهام مورد نظر می باشد. اما از آنجایی که در دنیای واقعی نرمال بودن بازده سهام مورد نظر خیلی اتفاق نمی افتد، پس بهتر است به جای اینکه از واریانس سهام استفاده کنیم از نیم واریانس آن به عنوان ریسک آن استفاده نماییم. نیم واریانس به جای اینکه کل انحراف معیار را در نظر بگیرد، فقط انحرافات کمتر از میانگین را در نظر می گیرد. به بیانی دیگر، نیم واریانس بازده های کمتر از بازده میانگین را به عنوان ریسک و خطر در نظر می گیرد.
استفاده از ریسک نیم واریانس نسبت به واریانس می تواند واقع گرایانه تر باشد اما امروزه با وجود پیچیدگی های بسیار نمی توان به همین جا بسنده کرد و باید بقیه متغیرهای موجود در مسئله را نسبت به شرایط موجود واقعی تر ساخت در ادامه به بقیه روش های پیش بینی و بهینه سازی پرداخته می شود که نمی توان که کدامیک بر دیگری ارجحیت دارد و فقط به توضیح کاربرد آنها پرداخته می شود:
بازده مورد انتظار
قبل توضیح هر چیز باید بدانیم که در مسئله بهینه سازی 3 عامل وجود دارند که تمام نوآوری های انجام به منظور درست و واقعی بدست آوردن این 3 عامل می باشد. عوامل مورد نظر ریسک، بازده و روش های بهینه سازی می باشند.
در حالت معمول، همیشه بازده مورد انتظار، میانگین حسابی از بازده های گذشته می باشد. اما اگر بخواهیم کمی دقیق تر عمل کنیم از میانگین هندسی برای میانگین بازده های گذشته استفاده می نماییم. شاید سوال شود که بازه زمانی مورد نظر برای بازده چقدر باشد؟ مثلا ماهانه باشد، هفتگی باشد یا روزانه؟ برای پاسخ به این سوال می توان گفت بستگی به این دارد که پرتفوی مورد نظر شما برای چه مدت زمانی گردآوری شده است. اما در حالت معمول، بازه زمانی برای بازده های مورد انتظار ماهانه می باشد. و بهترین حالت برای محاسبه آن ها، بازده های روزانه لگاریتمی می باشد که می توان از آنها برای بازده روزانه، از جمع هفتگی آنها برای بازده های هفتگی و از جمع سی روز برای بازده های ماهانه استفاده نمایید. پس برای محاسبه بازده می توان از موارد گفته شده استفاده کرد.
حال بحث بر سر این است که از بازده مورد انتظار میانگین گذشته می باشد و یا باید آنها را پیش بینی نمود؟ بعضی ها بر این عقیده می باشند که بازده مورد انتظار آینده از میانگین گذشته می باشد. اما بعضی دیگر بر این عقیده هستند که بازده های مورد انتظار آینده را باید پیش بینی کرد به همین دلیل انواع روش های پیش بینی به وجود آمدند. در این مقاله فقط به معرفی آنها پرداخته می شود.
روش AR
این روش به نام روش خودرگرسیون است که می توان از آن هم به صورت خطی و هم به صورت غیرخطی استفاده نمود.
روش ARMA
این روش روش میانگین متحرک خودرگرسیونی می باشد. سری زمانی مورد انتظار را به صورت میانگین متحرک و خودرگرسیونی در نظر می گیرد و در نهایت به پیش بینی سری زمانی می پردازد.
روش ARX و ARMAX
در این روش ها، به غیر از خود سری زمانی مورد نظر از یک سری زمانی دیگر نیز استفاده می شود تا بتوان پیش بینی دقیق تر داشت. به عنوان مثال اگر بخواهید شاخص کل بورس اوراق بهادار تهران را پیش بینی نمایید می توان از شاخص قیمت نفت نیز استفاده نمود تا پیش بینی دقیق تر شود.
شبکه های عصبی
در اینجا نمی خواهیم به توضیح و تعریف شبکه های عصبی بپردازیم. به همین دلیل، می توان گفت که از شبکه های عصبی می توان هم برای پیش بینی و هم برای بهینه سازی استفاده نمود. شبکه های عصبی از توابعی مختلف برای پیش بینی سری زمانی استفاده می نماید که پیش بینی های صورت گرفته کاملا به صورت غیرخطی می باشد. از شبکه های عصبی می توان به صورت تابع خودرگرسیونی، هم به صورت تابع خودرگرسیونی با متغیر مستقل و هم به صورت استفاده از یک متغیر مستقل که به ترتیب به نام های NAR، NARX و NN input-output استفاده نمود.
شبکه های عصبی ترکیبی
از ادغام الگوریتم شبکه عصبی با الگوریتم فرا ابتکاری دیگر، یک الگوریتم ترکیبی بدست می آید که عموما هم از لحاظ سرعت و هم از لحاظ دقت بهتر از خود شبکه عصبی می باشد. به این الگوریتم ها، الگوریتم شبکه عصبی ترکیبی گفته می شود. به عنوان مثال، اگر شبکه عصبی را با الگوریتم ازدحام ذرات ترکیب نماییم. یک الگوریتم ترکیبی بدست می آید که از آن می توان برای پیش بینی سری زمانی استفاده نمود.
شبکه فازی عصبی
با ادغام منطق فازی و شبکه عصبی یک الگوریتم ترکیبی بدست می آید که این الگوریتم جدید هم ویژگی های شبکه عصبی را دارد و هم از ویژگی های منطق فازی نیز برخوردار می باشد. از این الگوریتم هم می توان برای پیش بینی سری زمانی نیز استفاده نمود.
مدل خاکستری
مدل خاکستری یکی دیگر از مدل های جدید می باشد که از آن می توان هم برای پیش بینی و هم برای بهینه سازی پرتفوی استفاده نمود. این مدل زمانی کاربرد دارد که ما از اطلاعات کافی برخوردار نباشیم و وضعیت در حالتی از ابهام باشد ( که البته همیشه به همین گونه است). این مدل را عموما در مقالات مختلف با شبکه های عصبی مورد مقایسه قرار داده اند.
تا اینجا درباره بازده مورد انتظار توضیح داده شد و گفته شد که چگونه می توان بازده مورد انتظار را بدست آورد. حال، به نحوه بدست آوردن ریسک پرداخته می شود:
ریسک
همانطور که توضیح داده شد ریسک را می توان انحراف معیار بازده های مورد انتظار قلمداد کرد اما این در زمانی است که بازده ها، دارای توزیع نرمال باشند. اگر اینطور نباشد می توان از ریسک نیم واریانس استفاده نمود که در قسمت های قبل توضیح داده شد. اما اخیرا ریسک را با استفاده با استفاده از ارزش در معرض خطر نیز بدست می آورند. به این ترتیب که، گفته می شود حداکثر زیان ممکن از یک دارایی چقدر است و از آن به عنوان ریسک آن دارایی یاد می شود.
روش های حل بهینه سازی
همانطور که در قسمت های قبل توضیح داده شد، مسئله بهینه سازی را می توان به صورت خطی و هم به صورت غیرخطی حل نمود. اما این روش ها تا زمانی نتیجه بخش می باشد که محدودیت های دیگری وارد مسئله نشود به عنوان مثال اگر بخواهیم از یک سهمی بدون در نظر گرفتن ریسک و بازده آن، حداقل به یک اندازه ای در سبد خود داشته باشیم دیگر نمی توان از روش های گفته شده استفاده کرد زیرا این روش ها سبد سهام را بر اساس ریسک و بازده سهم بهینه سازی می نمایند و اگر بازده و ریسک یک سهم از وضعیت خوبی برخوردار نباشد، وزن آن در پرتفوی یا سبد سهام صفر در نظر گرفته می شود. اما اگر شما بخواهید به هر ترتیبی از یک سهمی یا تعداد سهامی در سبد سهام خود داشته باشید، می توانید به جای استفاده از روش های خطی و غیرخطی از الگوریتم های فرا ابتکاری استفاده نمایید.
الگوریتم های فرا ابتکاری
الگوریتم های فرا ابتکاری الگوریتم هایی هستند که عموما از طبیعت الهام گرفته شده اند و با استفاده از آنها می توان مسائل غیرخطی همراه با محدودیت را حل نمود. این الگوریتم ها سه نوع مختلف دارند: 1) الگوریتم های جستجوی تک عضوی 2) الگوریتم های جستجوی گروهی 3) الگوریتم های ترکیبی
الگوریتم های جستجوگر تک عضوی، الگوریتم هایی هستند که مسئله را با استفاده از یک عضوی که در الگوریتم تعریف می شود حل می نماید و در نهایت مسئله را به حالت بهینه نزدیک می نماید. به عنوان مثال الگوریتم جستجوی ممنوعه، تبرید شبیه سازی شده و الگوریتم تپه نوردی الگوریتم های تک عضوی می باشند.
الگوریتم های جستجوگر گروهی، الگوریتم هایی هستند که مسئله را با استفاده از گروهی که برای الگوریتم تعریف می شود حل می نماید. این الگوریتم ها بهتر از الگوریتم های تک عضوی عمل می نماید. به عنوان مثال الگوریتم ژنتیک، ازدحام ذرات، کلونی زنبورها الگوریتم های جستجوگر گروهی می باشند.
الگوریتم های ترکیبی، الگوریتم هایی هستند که از ترکیب دو الگوریتم دیگر به وجود آمده اند این الگوریتم ها عموما کندتر هستند اما از دقت بالاتری نسبت به دو الگوریتم دیگر برخوردار می باشند. نکته حائز اهمیت در این الگوریتم ها این است که اگر هر الگوریتمی با الگوریتم ژنتیک ادغام شود، الگوریتمی پدید می آید که به آن الگوریتم ممتیک گفته می شود. این الگوریتم در سال های اخیر بیشتر مورد توجه پژوهشگران قرار گرفته است. به عنوان مثال الگوریتم جهش قورباغه یک الگوریتم ممتیک می باشد.