مقایسۀ سهم جاوا و پایتون در بازارهای مالی سنتی و فینتک

کدام باید ترجیح داده شود؟ امنیت یا روندهای بهروز و سریع پیادهسازی؟ با ما همراه باشید تا پاسخ این سوال را بررسی کنیم: صنایع مالی مختلف چگونه بین جاوا و پایتون انتخاب میکنند و با چه معیارهایی یکی را بر دیگری ترجیح میدهند؟
به نظر میرسد هنوز بین جامعه برنامهنویسان تفاوت بین صنایع مالی (Finance) و فینتک (FinTech) جا نیفتاده است. ضروری است قبل از پیش بردن بحث در مورد تفاوتهای بین این دو صنعت بدانیم. زمانی که در مورد صنایع مالی بحث میکنیم عموما بخش سنتی، و زمانی که به فینتکها اشاره میکنیم بخشهای استارتآپی مد نظر است. بانکها در بخش سنتی قرار میگیرند اما به شکلهای مختلفی مانند تولید محصولات جدید میتوانند با فینتک آمیخته شوند. بنابراین، از این نقطه به بعد، هر جا از «صنایع مالی» نام میبریم، کل فرایند موجود در بخش مالی سنتی مد نظر ماست.
صنایع مالی – قلمرو جاوا
در بیست سال گذشته، جاوا زبان اول خدمات مالی بوده است. بانکها بازیگران اصلی صنایع مالیاند، موسساتی در این ابعاد همیشه امنیت را به عنوان یکی از پایههای استحکام صنعتشان در نظر میگیرند. معمولا این موسسات هر روز با مقدار زیادی داده سروکار دارند. جاوا همواره بخش بزرگی از اکوسیستم کلان داده (Big Data) بوده است. این ویژگی جاوا را برای مدیریت حجم زیاد دادههای مالی مناسب میسازد.
جاوا سبک برنامهنویسی شیگرا را به کار میگیرد و یک سکوی امن برای دادههای مالی مهیا میسازد. یکی از دلایل دیگر انتخاب جاوا توسط این گروه، گستردگی و رواج این زبان است.
فینتک، عاشق پایتون
متیو هریس، در یکی از مقالاتش ویژگیهای اصلی یک زبان برنامهنویسی برای پاسخگویی به نیازهای استارتاپهای فینتک را بررسی کرده است، این ویژگیها عبارتاند از:
- سادگی کار با آن
- مقیاسپذیری
- بلوغ
- بازدهی بالا
- کتابخانهها و ماژولهای آماده
بدون شک پایتون زبانی است که تمام این ویژگیها را دارد.
مسائل الگوریتمی از اولین مسائلی است که برنامهنویسان اپلیکیشنهای فینتکی با آن رو در رو میشوند. سینتکس پایتون نزدیکترین حالت به ریاضیاتی که در الگوریتمهای مالی مورد استفاده قرار میگیرد را دارد. علاوه بر این، شکل زبان پایتون باعث میشود توسط سایر متخصصان تیم، مانند ریاضیدانان یا اقتصاددانان به سادگی یاد گرفته شود.
شاید پایتون زبان سریعی نباشد، اما ساختار سادۀ آن باعث میشود در حین کدنویسی خطاهای کمتری به وجود بیاید و این کاهش باگ، فرایند توسعه را تا حدی تسریع میکند. به عنوان یک مثال ساده، تصویر پایین یک نمونه از کلاسها و وراثت را در دو زبان جاوا و پایتون مقایسه میکند.
همچنین پایتون یک مجموعۀ عالی از کتابخانههای متنباز برای امور مالی ارائه میکند که توسعه و نگهداری اپلیکیشنهای حوزۀ فینتک را بسیار ساده میکند. به لیستی از این کتابخانهها نگاهی بیندازیم:
- SciPy (library for scientific and technical computing)
- NumPy (fundamental package for scientific computing)
- pandas (flexible and powerful data analysis/manipulation library)
- pyalgotrade (algorithmic trading library)
- pyrisk (common financial risk and performance)
- zipline (a Pythonic algorithmic trading library)
- py (library for quantitative economics)
- pyfolio (portfolio and risk analytics
- pybitcointools (commonsense Bitcoin-themed Python ECC library)
- finmarketpy (library for backtesting trading strategies and analyzing financial markets)
- scikit-learn (machine learning algorithms)
«تعهد به امنیت» یا «همراهی با سیر بهروز برنامهنویسی»؟
همۀ ما این دو نوع از دوستان را تجربه کردهایم، دوست قوی و قابل اتکا که در کنار او احساس امنیت کردهایم. و دوست دیگرِ جالبی که همۀ وقایع روز را پیگیری میکرده. در داستان ما دوست قوی جاواست و دوست جالب پایتون!
جاوا سالیان سال است که در صحنۀ کاری موسسات مالی حاضر بوده و چهبسا بسیاری از این موسسهها کاملا به این زبان و محصولات تولیدشده در آن وابسته باشند. به هر حال، بسیار بعید است که جاوا به این زودی از تخت پادشاهی خود در محدودۀ بازارهای مالی سنتی پایین آورده شود. برنامهنویسان این نرمافزارها قدردان جاوا خواهند بود همان طور که ما برای دوست قویمان ارزش قائل بودیم.
در سمت دیگر، پایتون تمام ویژگیهای لازم را دارد که دوست جذاب ما و بچۀ دوستداشتنی کلاس باشد. فینتک، با هر دیدی که به آن نگاه کنید – چه مالک آیندۀ بازارهای مالی و چه یک سیر تحول که توانسته توجهها را به خود معطوف کند – نیاز به یک زبان برنامهنویسی با ویژگیهای خاص دارد که پایتون به خوبی توانسته این نیازها را برآورده کند.
اما نباید تواناییهای جاوا در تطبیق خود با نیازهای بهروز بازار و برنامهنویسان را نادیده بگیریم. اگر به این موضوع علاقهمندید میتوانید منتظر سخنرانی استفان کولبرن در کنفرانس JAX Finance 2018 باشید که در مورد «آیندۀ جاوا در بازار مالی» صحبت خواهد کرد. استفان کولبرن عضو گروه Java Champions و Java Rock Stars و متخصص در شرکت OpenGamma است. تخصص این شرکت، تولید نرمافزار متنباز برای بازارهای مالی مانند بانکها و شرکتهای سرمایهگذاری است.
منابع
پایتان (Python) سال 1991 ساخته شد و جاوا سال 1995، پس پایتان پیرتر است!
جاوا هم انواع کتابخانه برای انواع امور دارد؛ اما با پایتان چطور می توانید برای اکثر سیستم عاملها یک برنامه تولید کنید؟ این از مزایای جاوا است.
کد جاوا هم طولانی تر است اما پیچیده تر نیست.