روز
ساعت
دقیقه
ثانیه
کارگاه عملی ساخت ربات معاملهگر بدون برنامهنویسی
- ثبت نام دوره کوچینگ سطح 1 بهار آغاز شد!
معمولا اولین سوالی که برای شنوندگان پیش میآید این است که چرا برای بازارهای مالی از پایتون استفاده کنیم؟
در ادامه دلایل انتخاب پایتون را مفصل با هم بررسی میکنیم…
1- کامیونیتی (Community) گسترده. منظور از Community، جامعه استفادهکنندگان از یک محصول خاص است. هرچه جامعه استفادهکنندگان از یک محصول بیشتر باشد، افراد با سرعت بیشتری میتوانند مسائل خود را حل کنند.
2- پایتون واقعاً کاربرپسند است: پایتون بسیار به زبان محاوره انگلیسی نزدیک است. یا مثلاً اینکه کدهای پایتون معمولاً از زبانهای دیگر مختصر و مفیدتر هستند. پایتونیها برای حفظ سادگی و خوشدستی برنامههای پایتون مرامنامهای هم دارند (PEP 20 — The Zen of Python). اگر این 20 اصل را رعایت کنید اصطلاحاً پایتونیک کد زدهاید. (بعداً در خصوص پایتونیک صحبت خواهیم کرد.)
3- یادگیری پایتون بسیار ساده است: اگر پیش از این تجربه برنامهنویسی نداشتهاید اصلاً نگران نباشید، یادگیری پایتون بسیار ساده است. انقدر ساده مانند آب خوردن. کافی است کمی دقت کنید و روالهای اصلی را بشناسید.
4- پایتون همه جا هست. یکی از دغدغههای توسعهدهندگان حرفهای این است که من کجا میتوانم از این زبان برنامهنویسی استفاده کنم؟ آیا محصور به استفاده از ویندوز هستم؟ آیا از لینوکس میتوانم استفاده کنم؟ مکینتاش چطور؟ آیا برای توسعه وب هم میتوان استفاده کرد؟ آیا نسخه اندروید و آیاواس هم در دسترس است و … . پاسخ این سوالات یک کلمه است. بله. پایتون همه جا هست. هر جا که فکرش را بکنید.
این موضوع باعث میشود شما در محیطی که راحتتر هستید، توسعه دهید و استفادهکنندۀ نهایی هم در هر محیطی که در دسترس دارد، کدهای شما را اجرا کند. این بسیار حیرتانگیز است.
5- کتابخانههای بسیار زیاد پایتون. تفاوتی نمیکند شما در چه زمینهای کار میکنید، معمولاً برای هر موضوعی حداقل یک کتابخانه تخصصی ایجاد شده است. این کتابخانهها به شما اجازه میدهند کارهای خارقالعادهای را انجام دهید. کتابخانههای ریاضی، مالی، اقتصادی، علوم داده و دادهکاوی، BI و حتی هک، امنیت، تست نرمافزار از جمله این کتابخانههای تخصصی هستند.
کافی است نگاهی به بخش کتابخانههای پایتون بیندازید و کتابخانه دلخواه خود را انتخاب کنید.
6- ترکیب C و پایتون. هیچ چیز جای C را نمیگیرد. زبان C اگرچه یک پیرمرد کهنسال است اما هنوز هم زیرساخت بسیاری از نرمافزارهای قدرتمند مانند همین ویندوزی که شما استفاده میکنید، با C نوشته شده است. C یک زبان سطح پایین است و به همین علت بسیار سریع اجرا میشود. از آنجایی که پایتون یک زبان سطح بالاست و اجرای برنامههای بزرگ در پایتون ممکن است زمانبر شود، امکان برنامهنویسی C و استفاده از آن در پایتون وجود دارد. بسیار از کتابخانههای اصلی پایتون به زبان C نوشته شدهاند. این موضوع باعث افزایش امکانات پایتون و بالا رفتن سرعت اجرای برنامهها میشود. برای مثال، NumPy یکی از کتابخانههای معروف پایتون است.
بسیاری از ویژگیهای NumPy به زبان C نوشته شدهاند. در آرایههای بزرگ، زمان اجرا با استفاده از NumPy برابر با ۰.۰۹ درصد زمان اجرای کد پایتون ساده است.
برای یادگیری زبان پایتون نیاز دارید…
سوالی که خیلی از دوستان میپرسند این است که آیا پایتون برای مهندسین مناسب است؟
پاسخ این سوال یک کلمه است: بله! تفاوتی نمیکند در کدام رشته تحصیل کردهاید، اما به دلایل زیر پایتون حتما برای شما مناسب است:
یادگیری ماشین یکی از کاربردهای هوش مصنوعی است که سیستم ها را قادر می سازد به طور خودکار و از طریق تجربه و بدون برنامه ریزی، یاد بگیرند و خود را بهبود دهند.
یادگیری ماشین دارای کاربردهای فزایندهای در خودکارسازی تصمیمگیریهای مالی بوده و هست، طوری که هماکنون از ماشینها و روباتها برای ارزیابی اعتبارپذیری مشتریان بانکها یا اعتمادپذیری بیمهگذاران در صنعت بیمه استفاده میشود.
در حال حاضر هوش مصنوعی این امکان را برای مؤسسات و سازمانها فراهم آورده است تا با پردازش حجم عظیمی از اطلاعات و دادهها در کوتاهترین زمان و بالاترین دقت ممکن بهترین و دقیقترین تصویر ممکن از وضعیت مشتریان و شرکای بالقوه را تهیه و قدرت تصمیمگیری فوقالعادهای را به صاحبان صنایع یا مدیران شرکتها اعطا کنند و به طور مثال الگوهای غیرعادی معاملات مالی را با هدف احتمالسنجی اختلاس و کلاهبرداری کنترل نمایند.
یکی از راهکارهای ایجاد معاملات الگورتیمی خوب، استفاده از یادگیری ماشین برای بهبود استراتژی های سرمایه گذاری است.
پایتون یکی از بینظیرتین زبانهای برنامهنویسی در این زمان است. کاربرد پایتون در محاسبات اقتصادی به حدی است که میتوان عموم محاسبات اقتصاد سنجی را در آن انجام داد.
یکی دیگر از سوالاتی که خیلی پرسیده شده است، این است که آیا در معاملات الگوریتمی از همان روشهای تحلیل تکنیکال سنتی استفاده میشود؟ پاسخ این است که این دو، دو دنیای متفاوت هستند که البته با هم مرتبط هم هستند.
در تکنیکال معمولی عمده تمرکز بر روی قیمت و حجم است، در صورتی که در معاملات الگوریتمی علاوه بر اینها از اطلاعات دیگر بازار مانند میزان سفارشات، حقوقی یا حقیقی بودن سفارشدهنده، سرعت بازار و … برای انجام تحلیل استفاده میشود.
تکنیکال صرفاً بر دادههای بازار متمرکز است؛ در صورتی که در معاملات الگوریتمی از دادههای خارج بازار مانند اخبار و اطلاعات شبکههای اجتماعی، آمار و اطلاعات سایر بازارها و … هم استفاده میشود. تکنیکال صرفاً بررسی گذشته با هدف پیشبینی آینده است اما در معاملات الگوریتمی میتوان در لحظه دادههای بزرگی را تحلیل کرد و نتیجه گرفت.
تحلیل تکنیکال بهعنوان یک روش در میان روشهایی که در معاملات الگوریتمی استفاده میشود، قابل استفاده است.
یکی از بهترین نرمافزارهای هوش تجاری، Power BI مایکروسافت است. به کمک این نرمافزار میتوان دادههای بسیار پیچیده را از منابع مختلف دریافت و مصور نمود.
خوشبختانه مایکروسافت به تازگی پایتون را با Power BI یکپارچه کرده است. اکنون شما میتوانید اسکریپتهای پایتون را برای ایجاد نمودارهای سفارشی به کار بگیرید.
از آنجایی که نتیجه مدلسازی مالی یک گزارش است، ما در انتهای بحث مدلسازی مالی با پایتون، به بحث هوش تجاری با پایتون هم خواهیم پرداخت.
اما ما از کجا شروع کنیم و چه مسیری پیش روی ماست؟ احتمالاً این سوال شما هم هست.
اگر انتهای مسیر را تبدیل شدن به دانشمند داده مالی در نظر بگیریم (که مثلاً نوشتن رباتهای معاملهگر در بحث معاملات الگوریتمی یکی از کاربردهای آن است و یا مثلاً انجام تحلیلهای پیشرفته اقتصادی و ارائه پیشبینی در حوزه اقتصاد کلان یکی دیگر از کاربردهای آن است)، مسیر ذکرشده در تصویر این پست راهگشا خواهد بود.