এই পোস্টটি তাদের জন্য উপযুক্ত যারা পরিমাণগত ট্রেডিং শুরু করছেন এবং যারা এই ক্ষেত্রে কিছু অভিজ্ঞতা অর্জন করেছেন। পোস্টটি ব্যাকটেস্টিংয়ের সাধারণ ফাঁদগুলি পাশাপাশি কিছু অস্বাভাবিক বিষয় নিয়ে আলোচনা করে!
এটি বিভিন্ন ধরণের ব্যাকটেস্টিং প্রক্রিয়া এবং সেইসাথে এই পদ্ধতিগুলি বাস্তবায়ন করে এমন সফ্টওয়্যার ল্যান্ডস্কেপটিও দেখায়। তারপরে আমরা আলোচনা করি যে আজ উপলভ্য ওপেন সোর্স সরঞ্জামগুলির প্রচলন সহ আপনার নিজের ব্যাকটেস্টার তৈরি করা মূল্যবান কিনা।
অবশেষে, আমরা একটি ইভেন্ট-চালিত ব্যাকটেস্টিং সিস্টেমের ইনস এবং আউটগুলি নিয়ে আলোচনা করি, একটি বিষয় যা আমি প্রায়শই পূর্ববর্তী পোস্টগুলিতে কোয়ান্টস্টার্টে কভার করেছি।
ব্যাকটেস্ট হল ঐতিহাসিক মূল্যের তথ্যের একটি সেটে ট্রেডিং কৌশল নিয়মের প্রয়োগ।
অর্থাৎ, যদি আমরা সম্পদের একটি পোর্টফোলিওতে প্রবেশ এবং প্রস্থান করার জন্য একটি সেট প্রক্রিয়া নির্ধারণ করি এবং সেই নিয়মগুলিকে সেই সম্পদের ঐতিহাসিক মূল্যের ডেটাতে প্রয়োগ করি, আমরা এই
এটা একবার বলা হয়েছিল যে
ব্যাকটেস্ট শেষ পর্যন্ত আমাদের সিদ্ধান্ত নিতে সাহায্য করে যে এটি কৌশল নিয়মের একটি সেট লাইভ ট্রেডিংয়ের মূল্যবান কিনা। এটি আমাদের অতীতে একটি কৌশল কীভাবে সম্পাদন করতে পারে তার একটি ধারণা দেয়। মূলত এটি আমাদের কোনও বাস্তব মূলধন বরাদ্দ করার আগে খারাপ কৌশল নিয়মগুলি ফিল্টার করতে দেয়।
ব্যাকটেস্ট তৈরি করা সহজ। দুর্ভাগ্যক্রমে ব্যাকটেস্টের ফলাফলগুলি লাইভ ট্রেডিংয়ের ফলাফল নয়। তারা পরিবর্তে বাস্তবতার একটি মডেল। একটি মডেল যা সাধারণত অনেক অনুমান ধারণ করে।
সফটওয়্যার ব্যাকটেস্টের দুটি প্রধান প্রকার রয়েছে -
ব্যাকটেস্টিং সফটওয়্যার ডিজাইন করার সময় সর্বদা নির্ভুলতা এবং বাস্তবায়নের জটিলতার মধ্যে একটি বাণিজ্য বন্ধ থাকে। উপরের দুটি ব্যাকটেস্টিং প্রকার এই বাণিজ্য বন্ধের জন্য বর্ণালীটির উভয় প্রান্তকে উপস্থাপন করে।
ব্যাকটেস্টিংয়ের সাথে যুক্ত অনেকগুলি ফাঁদ রয়েছে। এগুলি সমস্তই এই সত্যকে নিয়ে উদ্বেগ প্রকাশ করে যে ব্যাকটেস্টিং কেবল বাস্তবতার একটি মডেল। আরও সাধারণ ফাঁদগুলির মধ্যে রয়েছেঃ
ব্যাকটেস্টিং এর সাথে আরও কিছু সূক্ষ্ম সমস্যা রয়েছে যা প্রায়শই আলোচনা করা হয় না, তবে এখনও বিবেচনা করা অবিশ্বাস্যভাবে গুরুত্বপূর্ণ। এর মধ্যে রয়েছেঃ
ব্যাকটেস্টিংয়ের সমস্যা সম্পর্কে অনেক লেখা হয়েছে। টাকার বালচ এবং এরনি চ্যান উভয়ই এই সমস্যাগুলি দীর্ঘস্থায়ীভাবে বিবেচনা করে।
ফর-লুপ ব্যাকটেস্টার হল ব্যাকটেস্টিং সিস্টেমের সবচেয়ে সরল প্রকার এবং কোয়ান্টাম ব্লগের পোস্টে সবচেয়ে বেশি দেখা যায়, কেবল তার সরলতা এবং স্বচ্ছতার জন্য।
মূলত ফর-লুপ সিস্টেমটি প্রতি ট্রেডিং দিনে (বা ওএইচএলসি বার) পুনরাবৃত্তি করে, সম্পদের মূল্যের সাথে সম্পর্কিত কিছু গণনা সম্পাদন করে, যেমন বন্ধের একটি চলমান গড়, এবং তারপরে একটি নির্দিষ্ট সম্পদের দীর্ঘ বা সংক্ষিপ্ত হয় (প্রায়শই একই বন্ধের মূল্যে, তবে কখনও কখনও পরের দিন) । পুনরাবৃত্তি তারপর অব্যাহত থাকে। সমস্ত সময় মোট ইক্যুইটি ট্র্যাক করা হয় এবং পরে একটি ইক্যুইটি বক্ররেখা উত্পাদন করার জন্য সংরক্ষণ করা হয়।
এখানে এমন একটি অ্যালগরিদমের জন্য ছদ্ম কোড রয়েছেঃ
for each trading bar:
do_something_with_prices();
buy_sell_or_hold_something();
next_bar();PythonCopy
আপনি যেমন দেখতে পাচ্ছেন, এই ধরনের সিস্টেমের নকশা অবিশ্বাস্যভাবে সহজ। এটি একটি নির্দিষ্ট কৌশল নিয়ম সেট কর্মক্ষমতা একটি প্রথম চেহারা পেতে আকর্ষণীয় করে তোলে।
ফর-লুপ ব্যাকটেস্টারগুলি প্রায় কোনও প্রোগ্রামিং ভাষায় বাস্তবায়ন করা সহজ এবং কার্যকর করা খুব দ্রুত। শেষেরটির সুবিধাটি হ'ল ট্রেডিং সেটআপটি অনুকূল করার জন্য অনেকগুলি পরামিতি সংমিশ্রণ পরীক্ষা করা যেতে পারে।
ফর-লুপ ব্যাকটেস্টারগুলির প্রধান অসুবিধা হ'ল তারা বেশ অবাস্তব। বিশেষভাবে যুক্ত না হলে তাদের প্রায়শই লেনদেনের ব্যয়ের ক্ষমতা থাকে না। সাধারণত অর্ডারগুলি মধ্যপন্থী মূল্যের সাথে অবিলম্বে
ব্যাকটেস্টিং সিস্টেম এবং লাইভ-ট্রেডিং সিস্টেমের মধ্যে কোড পুনরায় ব্যবহারের ন্যূনতম পরিমাণ রয়েছে। এর অর্থ হল যে কোডটি প্রায়শই দুবার লিখতে হয়, আরও বাগগুলির সম্ভাবনা প্রবর্তন করে।
ফর-লুপ ব্যাকটেস্টাররা ইনডেক্সিংয়ের সাথে বাগগুলির কারণে Look-Ahead Bias-এর প্রবণ। উদাহরণস্বরূপ, আপনার প্যানেল ইনডেক্সিংয়ে
ফর-লুপ ব্যাকটেস্টারগুলি সত্যিই কেবলমাত্র একটি ফিল্টারিং প্রক্রিয়া হিসাবে ব্যবহার করা উচিত। আপনি স্পষ্টতই খারাপ কৌশলগুলি নির্মূল করতে তাদের ব্যবহার করতে পারেন, তবে আপনাকে শক্তিশালী পারফরম্যান্সের বিষয়ে সংশয়ী থাকতে হবে। আরও গবেষণার প্রয়োজন হয়। কৌশলগুলি প্রায়শই লাইভ ট্রেডিংয়ে ব্যাকটেস্টে তাদের চেয়ে ভাল পারফর্ম করে!
ইভেন্ট-চালিত ব্যাকটেস্টারগুলি বর্ণালীটির অন্য প্রান্তে অবস্থিত। তারা লাইভ-ট্রেডিং অবকাঠামো বাস্তবায়নের সাথে অনেক বেশি মিল রয়েছে। যেমন, তারা প্রায়শই ব্যাকটেস্ট এবং লাইভ ট্রেডিং পারফরম্যান্সের মধ্যে পার্থক্যের ক্ষেত্রে আরও বাস্তববাদী।
এই ধরনের সিস্টেমগুলি একটি বড়
যখন একটি নির্দিষ্ট ইভেন্ট সনাক্ত করা হয় তখন এটি অবকাঠামোর উপযুক্ত মডিউল (গুলি) এ রুট করা হয়, যা ইভেন্টটি পরিচালনা করে এবং তারপরে সম্ভাব্যভাবে নতুন ইভেন্টগুলি তৈরি করে যা কিউয়ে ফিরে যায়।
ইভেন্ট-ড্রাইভড ব্যাকটেস্টিং সিস্টেমের ছদ্ম কোড নিম্নরূপঃ
while event_queue_isnt_empty():
event = get_latest_event_from_queue();
if event.type == "tick":
strategy.calculate_trading_signals(event);
else if event.type == "signal":
portfolio.handle_signal(event);
else if event.type == "order":
portfolio.handle_order(event);
else if event.type == "fill":
portfolio.handle_fill(event)
sleep(600); # Sleep for, say, 10 minsPythonCopy
আপনি দেখতে পাচ্ছেন যে পোর্টফোলিও হ্যান্ডলার মডিউলের উপর প্রচুর নির্ভরতা রয়েছে। এই ধরনের একটি মডিউল একটি ইভেন্ট-চালিত ব্যাকটেস্টিং সিস্টেমের
ইভেন্ট চালিত ব্যাকটেস্টার ব্যবহারের অনেক সুবিধা রয়েছেঃ
যদিও এর সুবিধাগুলো স্পষ্ট, তবে এমন জটিল পদ্ধতি ব্যবহারের কিছু গুরুতর অসুবিধা রয়েছেঃ
এই বিভাগে আমরা ফর-লুপ এবং ইভেন্ট-চালিত উভয় সিস্টেমের জন্য বিদ্যমান সফ্টওয়্যার (উভয় ওপেন সোর্স এবং বাণিজ্যিক) বিবেচনা করব।
ফর-লুপ ব্যাকটেস্টারদের জন্য ব্যবহৃত প্রধান প্রোগ্রামিং ভাষা / সফ্টওয়্যারগুলির মধ্যে পাইথন (পান্ডা লাইব্রেরী সহ), আর (এবং কোয়ান্টমড লাইব্রেরি) এবং ম্যাটল্যাব অন্তর্ভুক্ত রয়েছে। কোয়ান্ট ব্লগে প্রচুর কোড স্নিপেট পাওয়া যায়। এই জাতীয় ব্লগের একটি দুর্দান্ত তালিকা কোয়ান্টক্র্যাসিতে পাওয়া যাবে।
ইভেন্ট-ড্রাইভেন সিস্টেমের বাজার অনেক বড়, যেহেতু ক্লায়েন্ট/ব্যবহারকারীরা প্রায়শই চান যে সফ্টওয়্যারটি এক প্যাকেজে ব্যাকটেস্টিং এবং লাইভ ট্রেডিং উভয়ই সক্ষম হোক।
ব্যয়বহুল বাণিজ্যিক অফারগুলির মধ্যে রয়েছে ডেলটিক্স এবং কোয়ান্টহাউস। এগুলি প্রায়শই কোয়ান্ট হেজ ফান্ড, ফ্যামিলি অফিস এবং প্রোপ ট্রেডিং ফার্মে পাওয়া যায়।
ক্লাউড-ভিত্তিক ব্যাকটেস্টিং এবং লাইভ ট্রেডিং সিস্টেমগুলি তুলনামূলকভাবে নতুন। কোয়ান্টোপিয়ান ব্যাকটেস্টিং এবং লাইভ ট্রেডিং উভয়ের জন্য একটি পরিপক্ক ওয়েব-ভিত্তিক সেটআপের একটি উদাহরণ।
প্রাতিষ্ঠানিক কোয়ান্টগুলি প্রায়শই তাদের নিজস্ব ইন-হাউস সফ্টওয়্যার তৈরি করে। এটি নিয়ন্ত্রক সীমাবদ্ধতা, বিনিয়োগকারী সম্পর্ক / প্রতিবেদন এবং নিরীক্ষণযোগ্যতার মিশ্রণের কারণে।
খুচরা কোয়ান্টগুলির কাছে কোয়ান্টপিয়ান এর
ওপেন সোর্স সফটওয়্যারের ক্ষেত্রে, অনেকগুলি লাইব্রেরি উপলব্ধ রয়েছে। এগুলি বেশিরভাগ পাইথনে লেখা হয় (যার কারণ আমি নীচে বর্ণনা করব) এবং এর মধ্যে রয়েছে জিপলাইন (কোয়ানটোপিয়ান), পাইআলগোট্রেড, পাইসিস্টেমট্রেড (রব কারভার / ইনভেস্টমেন্ট ইডিওসি) এবং কিউএসটিট্রেডার (কোয়ান্টস্টার্ট
তবে, সবচেয়ে গুরুত্বপূর্ণ দিকগুলির মধ্যে একটি হল যে আপনি কোন সফটওয়্যারটি ব্যবহার করবেন না কেন, এটি আর্থিক তথ্যের সমানভাবে শক্তিশালী উত্সের সাথে যুক্ত হতে হবে। অন্যথায় আপনি "বালিতে আবর্জনা, আবর্জনা আউট" এর পরিস্থিতিতে থাকবেন এবং আপনার লাইভ ট্রেডিং ফলাফলগুলি আপনার ব্যাকটেস্টগুলির থেকে উল্লেখযোগ্যভাবে আলাদা হবে।
যদিও সফটওয়্যার আমাদের জন্য বিস্তারিত যত্ন নেয়, এটি আমাদের অনেক বাস্তবায়ন বিবরণ থেকে লুকিয়ে রাখে যা আমরা যখন আমাদের ট্রেডিং কৌশল জটিলতা প্রসারিত করতে চাই তখন প্রায়শই গুরুত্বপূর্ণ। কিছু সময়ে এটি প্রায়শই আমাদের নিজস্ব সিস্টেমগুলি লিখতে হয় এবং প্রথম প্রশ্নটি উত্থাপিত হয়
একটি পরিমাণগত সফটওয়্যার ডেভেলপার হিসাবে ব্যাকগ্রাউন্ড থাকা সত্ত্বেও আমি ব্যক্তিগতভাবে
আমাদের কেবলমাত্র যা কাজ করে তা নিয়েই আগ্রহী হওয়া উচিত। এখানে কিছু প্রধান প্রতিযোগী রয়েছেঃ
পাইথন একটি অত্যন্ত সহজ শেখার প্রোগ্রামিং ভাষা এবং এটি প্রায়শই প্রথম ভাষা যা ব্যক্তিরা প্রোগ্রামিং শেখার সিদ্ধান্ত নেওয়ার সময় যোগাযোগ করে। এটিতে সরঞ্জামগুলির একটি স্ট্যান্ডার্ড লাইব্রেরি রয়েছে যা কল্পনা করা যায় এমন প্রায় কোনও ধরণের ডেটা পড়তে পারে এবং খুব সহজেই অন্য কোনও
এটিতে কিছু ব্যতিক্রমী কোয়ান্টাম / ডেটা সায়েন্স / মেশিন লার্নিং (এমএল) লাইব্রেরি রয়েছে NumPy, SciPy, পান্ডা, Scikit-Learn, Matplotlib, PyMC3 এবং Statsmodels। যদিও এটি এমএল এবং সাধারণ ডেটা সায়েন্সের জন্য দুর্দান্ত, তবে এটি আরও বিস্তৃত ক্লাসিকাল পরিসংখ্যানগত পদ্ধতি এবং সময় সিরিজ বিশ্লেষণের জন্য কিছুটা ক্ষতিগ্রস্থ হয়।
এটি ফর-লুপ এবং ইভেন্ট-চালিত ব্যাকটেস্টিং উভয় সিস্টেম তৈরির জন্য দুর্দান্ত। আসলে, এটি সম্ভবত একমাত্র ভাষা যা সরাসরি শেষ থেকে শেষ গবেষণা, ব্যাকটেস্টিং, স্থাপনার অনুমতি দেয়, লাইভ ট্রেডিং, প্রতিবেদন এবং পর্যবেক্ষণ।
সম্ভবত এর সবচেয়ে বড় অসুবিধা হল এটি সি++ এর মতো অন্যান্য ভাষার তুলনায় বেশ ধীর গতির। তবে, এই সমস্যাটি উন্নত করার জন্য কাজ করা হচ্ছে এবং সময়ের সাথে সাথে পাইথন দ্রুত হয়ে উঠছে।
R একটি পরিসংখ্যানগত প্রোগ্রামিং পরিবেশ, বরং একটি পূর্ণ-প্রাপ্ত
এটি ফর-লুপ ব্যাকটেস্টিংয়ের জন্য ব্যাপকভাবে ব্যবহৃত হয়, প্রায়শই কোয়ান্টামোড লাইব্রেরির মাধ্যমে, তবে ইভেন্ট-চালিত সিস্টেম বা লাইভ ট্রেডিংয়ের জন্য বিশেষভাবে উপযুক্ত নয়। তবে এটি কৌশল গবেষণায় দুর্দান্ত।
সি++ অত্যন্ত দ্রুত হওয়ার জন্য খ্যাতি অর্জন করেছে। প্রায় সমস্ত বৈজ্ঞানিক উচ্চ-কার্যকারিতা কম্পিউটিং হয় ফরট্রান বা সি++ তে পরিচালিত হয়। এটি এর প্রাথমিক সুবিধা। সুতরাং আপনি যদি উচ্চ ফ্রিকোয়েন্সি ট্রেডিং বিবেচনা করছেন, বা বড় সংস্থায় উত্তরাধিকারসূত্রে সিস্টেমে কাজ করছেন, তাহলে সি++ সম্ভবত একটি প্রয়োজনীয়তা।
দুর্ভাগ্যবশত এটি কৌশল গবেষণা পরিচালনার জন্য বেদনাদায়ক। স্ট্যাটিকালি টাইপড হওয়ার কারণে এটি পাইথন বা আর এর তুলনায় সহজেই লোড, পড়া এবং ফর্ম্যাট ডেটা বেশ জটিল।
এর আপেক্ষিক বয়স সত্ত্বেও, এটি সম্প্রতি সি ++ 11 / সি ++ 14 এবং আরও মানের পরিমার্জন প্রবর্তনের সাথে উল্লেখযোগ্যভাবে আধুনিকীকরণ করা হয়েছে।
আপনি জাভা, স্কালা, সি #, জুলিয়া এবং অনেকগুলি কার্যকরী ভাষায়ও নজর রাখতে পারেন। তবে, আমার প্রস্তাবটি পাইথন, আর এবং / অথবা সি ++ এর সাথে লেগে থাকা, কারণ কোয়ান্টাম ট্রেডিং সম্প্রদায়গুলি অনেক বড়।
উত্তর: হ্যাঁ!
এটি আপনার নিজের ইভেন্ট-চালিত ব্যাকটেস্টিং সিস্টেম লিখতে একটি দুর্দান্ত শেখার অভিজ্ঞতা। প্রথমত, এটি আপনাকে আপনার ট্রেডিং অবকাঠামোর সমস্ত দিক বিবেচনা করতে বাধ্য করে, কেবল নির্দিষ্ট কৌশলটিতে ঘন্টা ব্যয় করে না।
এমনকি যদি আপনি লাইভ ট্রেডিংয়ের জন্য সিস্টেমটি ব্যবহার না করেন, তবে এটি আপনাকে প্রচুর সংখ্যক প্রশ্ন সরবরাহ করবে যা আপনার বাণিজ্যিক বা FOSS ব্যাকটেস্টিং বিক্রেতাদের জিজ্ঞাসা করা উচিত।
উদাহরণস্বরূপঃ আপনার বর্তমান লাইভ সিস্টেমটি আপনার ব্যাকটেস্ট সিমুলেশন থেকে কীভাবে আলাদাঃ
যদিও ইভেন্ট-ড্রাইভেন সিস্টেমগুলি দ্রুত বা সহজভাবে লেখা হয় না, তবে অভিজ্ঞতা আপনার কোয়ান্ট ট্রেডিং ক্যারিয়ারে পরে বিশাল শিক্ষামূলক লভ্যাংশ প্রদান করবে।
আপনি কিভাবে এমন একটি সিস্টেম লিখবেন?
শুরু করার সর্বোত্তম উপায় হ'ল কেবল জিপলাইন, কিউএসট্রেডার, পাইআলগোট্রেড, পাইসিস্টেমট্রেড ইত্যাদি ডাউনলোড করা এবং ডকুমেন্টেশন এবং কোডটি পড়ার চেষ্টা করা। এগুলি সবই পাইথনে লেখা (আমি উপরে বর্ণিত কারণগুলির কারণে) এবং ধন্যবাদ পাইথন ছদ্ম-কোড পড়ার মতোই। অর্থাৎ, এটি অনুসরণ করা খুব সহজ।
আমি ইভেন্ট চালিত ব্যাকটেস্ট ডিজাইনের উপর অনেক নিবন্ধও লিখেছি, যা আপনি এখানে খুঁজে পেতে পারেন, যা আপনাকে সিস্টেমের প্রতিটি মডিউল বিকাশের মাধ্যমে গাইড করে। ইনভেস্টমেন্ট ইডিওসিতে রব কারভারও ফিউচার ট্রেডিংয়ের জন্য এই ধরনের সিস্টেম তৈরির পদ্ধতির বর্ণনা দিয়েছেন।
মনে রাখবেন যে আপনাকে প্রথম দিনে বিশেষজ্ঞ হতে হবে না। আপনি এটি ধীরে ধীরে, দিন থেকে দিন, মডিউল দ্বারা মডিউল নিতে পারেন। আপনার যদি সাহায্যের প্রয়োজন হয় তবে আপনি সর্বদা আমার বা অন্যান্য ইচ্ছুক কোয়ান্টাম ব্লগারদের সাথে যোগাযোগ করতে পারেন। আমার যোগাযোগ ইমেলের জন্য নিবন্ধের শেষ দেখুন।
আমি এখন মডিউলগুলি নিয়ে আলোচনা করব যা প্রায়শই অনেক ইভেন্ট-চালিত ব্যাকটেস্টিং সিস্টেমে পাওয়া যায়। যদিও এটি একটি সম্পূর্ণ তালিকা নয়, তবে এটি আপনাকে এই জাতীয় সিস্টেমগুলি কীভাবে ডিজাইন করা হয় তার একটি
এখানে সব ঐতিহাসিক মূল্যের তথ্য সংরক্ষণ করা হয়, আপনার ট্রেডিং ইতিহাস সহ, একবার লাইভ। একটি পেশাদারী সিস্টেম শুধু ইয়াহু ফাইন্যান্স থেকে কয়েক CSV ফাইল নয়!
পরিবর্তে, আমরা একটি
আদর্শভাবে, আমরা টিক-লেভেল ডেটা সংগ্রহ এবং সংরক্ষণ করতে চাই কারণ এটি আমাদের ট্রেডিং স্প্রেডের ধারণা দেয়। এর অর্থ হল আমরা চাইলে আমাদের নিজস্ব OHLC বারগুলি তৈরি করতে পারি, নিম্ন ফ্রিকোয়েন্সিতে।
আমাদের সর্বদা কর্পোরেট ক্রিয়াকলাপ (যেমন স্টক বিভক্তি এবং লভ্যাংশ), বেঁচে থাকার পক্ষপাত (স্টক ডিলিটিং) পাশাপাশি বিভিন্ন এক্সচেঞ্জের মধ্যে সময় অঞ্চল পার্থক্যগুলি ট্র্যাক করার বিষয়ে সচেতন হওয়া উচিত।
ব্যক্তিগত/খুচরা কোয়ান্টগুলি এখানে প্রতিদ্বন্দ্বিতা করতে পারে কারণ অনেক উত্পাদন মানের ডাটাবেস প্রযুক্তি পরিপক্ক, বিনামূল্যে এবং ওপেন সোর্স। ডেটা নিজেই সস্তা হয়ে উঠছে এবং কানালের মতো সাইটের মাধ্যমে
এখনও অনেক বাজার এবং কৌশল রয়েছে যা বড় তহবিলের আগ্রহের জন্য খুব ছোট। এটি খুচরা পরিমাণ ব্যবসায়ীদের জন্য একটি উর্বর মাটি।
ইভেন্ট-ড্রাইভেন সিস্টেমের ট্রেডিং কৌশল মডিউল সাধারণত নতুন বাজার তথ্যের উপর কিছু ধরণের ভবিষ্যদ্বাণীমূলক বা ফিল্টারিং প্রক্রিয়া চালায়।
এটি বার বা টিক ডেটা গ্রহণ করে এবং তারপরে একটি সম্পদ দীর্ঘ বা সংক্ষিপ্ত করার জন্য একটি ট্রেডিং সংকেত উত্পাদন করার জন্য এই প্রক্রিয়াগুলি ব্যবহার করে। এই মডিউলটি একটি পরিমাণ উত্পাদন করার জন্য ডিজাইন করা হয়নি, যা অবস্থান-আকারের মডিউলের মাধ্যমে পরিচালিত হয়।
কোয়ান্ট ব্লগ আলোচনার 95% সাধারণত ট্রেডিং কৌশলগুলির চারপাশে ঘোরে। আমি ব্যক্তিগতভাবে বিশ্বাস করি এটি 20% এর মতো হওয়া উচিত। এটি কারণ আমি মনে করি যে
ইভেন্ট-ড্রিভেন ব্যাকটেস্টারের
এই ব্যবস্থার লক্ষ্য হ'ল বর্তমান পোর্টফোলিও থেকে পছন্দসই পোর্টফোলিওতে যাওয়া, ঝুঁকি হ্রাস এবং লেনদেনের ব্যয় হ্রাস করা।
মডিউলটি সিস্টেমের কৌশল, ঝুঁকি, অবস্থান আকার এবং অর্ডার কার্যকরকরণের ক্ষমতাকে একত্রিত করে। এটি ব্রোকারেজের নিজস্ব গণনার অনুকরণ করার জন্য ব্যাকটেস্টিংয়ের সময় অবস্থান গণনাগুলিও পরিচালনা করে।
এই ধরনের জটিল সিস্টেম ব্যবহারের প্রধান সুবিধা হল এটি একক পোর্টফোলিওর অধীনে বিভিন্ন আর্থিক যন্ত্র পরিচালনা করতে দেয়। এই হেজিং সহ ইনস্টিটিউশনাল স্টাইলের পোর্টফোলিওগুলির জন্য এটি প্রয়োজনীয়। ফর-লুপ ব্যাকটেস্টিং সিস্টেমে এই জাতীয় জটিলতা কোড করা খুব জটিল।
ঝুঁকি ব্যবস্থাপনাকে তার নিজস্ব মডিউলে আলাদা করা অত্যন্ত সুবিধাজনক হতে পারে। মডিউলটি পোর্টফোলিও থেকে প্রেরিত আদেশগুলি পরিবর্তন, যোগ বা ভেটো করতে পারে।
বিশেষত, ঝুঁকি মডিউলটি বাজারের নিরপেক্ষতা বজায় রাখতে হেজ যুক্ত করতে পারে। এটি সেক্টর এক্সপোজার বা এডিভি সীমাগুলির কারণে অর্ডার আকার হ্রাস করতে পারে। এটি যদি স্প্রেডটি খুব বড় হয় বা বাণিজ্যের আকারের তুলনায় ফিগুলি খুব বড় হয় তবে এটি সম্পূর্ণরূপে কোনও বাণিজ্যকে ভেটো করতে পারে।
একটি পৃথক পজিশন সাইজিং মডিউল উদ্বায়ীতা অনুমান এবং কেলি লিভারেজের মতো পজিশন সাইজিং নিয়ম বাস্তবায়ন করতে পারে। প্রকৃতপক্ষে, একটি মডুলার পদ্ধতির ব্যবহার কৌশল বা সম্পাদন কোডের কোনও প্রভাব ছাড়াই এখানে বিস্তৃত কাস্টমাইজেশনের অনুমতি দেয়।
এই ধরনের বিষয়গুলি কোয়ান্ট ব্লগোস্ফিয়ারে ভালভাবে প্রতিনিধিত্ব করা হয় না। তবে, প্রতিষ্ঠানগুলি এবং কিছু খুচরা ব্যবসায়ীরা কীভাবে তাদের ট্রেডিং সম্পর্কে চিন্তা করে তার মধ্যে সম্ভবত এটি সবচেয়ে বড় পার্থক্য। সম্ভবত আরও ভাল রিটার্ন পাওয়ার সহজতম উপায় হ'ল এইভাবে ঝুঁকি ব্যবস্থাপনা এবং অবস্থান আকারের বাস্তবায়ন শুরু করা।
বাস্তব জীবনে আমরা কখনোই গ্যারান্টি দিই না যে আমরা মাঝখানে বাজারে পৌঁছে যাবো!
আমাদের অবশ্যই লেনদেনের বিষয়গুলি যেমন ক্ষমতা, স্প্রেড, ফি, স্লিপ, বাজার প্রভাব এবং অন্যান্য অ্যালগরিদমিক কার্যকরকরণ উদ্বেগ বিবেচনা করতে হবে, অন্যথায় আমাদের ব্যাকটেস্টিং রিটার্নগুলি ব্যাপকভাবে অতিরঞ্জিত হওয়ার সম্ভাবনা রয়েছে।
ইভেন্ট চালিত সিস্টেমের মডুলার পদ্ধতির ফলে আমরা সহজেই ব্যাকটেস্ট এক্সিকিউশন হ্যান্ডলারকে লাইভ এক্সিকিউশন হ্যান্ডলারের সাথে স্যুইচ করতে পারি এবং রিমোট সার্ভারে স্থাপন করতে পারি।
আমরা সহজেই
তৃতীয় পক্ষের লাইব্রেরিগুলির সাথে
খুচরা কোয়ান্টগুলি প্রাতিষ্ঠানিক কোয়ান্টগুলির দ্বারা ব্যবহৃত পরিশীলিত প্রতিবেদনের কৌশলগুলি ধার নিতে পারে এবং গ্রহণ করা উচিত। এই জাতীয় সরঞ্জামগুলির মধ্যে রয়েছে পোর্টফোলিও এবং সংশ্লিষ্ট ঝুঁকিগুলির লাইভ
এই অবকাঠামোর ধারাবাহিক ধাপে ধাপে উন্নতি করা উচিত। এটি কেবল বাগগুলি নির্মূল করে এবং বাণিজ্য বিলম্বের মতো সমস্যাগুলি উন্নত করে দীর্ঘমেয়াদে রিটার্নগুলিকে সত্যই বাড়িয়ে তুলতে পারে।
ডাব্লুজিএস শেষ পর্যন্ত আলফা ক্ষয় কারণে ক্ষয় হবে। অন্যরা শেষ পর্যন্ত প্রান্ত আবিষ্কার করবে এবং রিটার্নগুলিকে বাদ দেবে। তবে, একটি শক্তিশালী ট্রেডিং অবকাঠামো, একটি শক্ত কৌশল গবেষণা পাইপলাইন এবং অবিচ্ছিন্ন শিক্ষা এই ভাগ্য এড়ানোর দুর্দান্ত উপায়।
পরিকাঠামো অপ্টিমাইজেশান কৌশল উন্নয়ন তুলনায় আরো
একটি দূরবর্তী সার্ভারে স্থাপন, এই দূরবর্তী সিস্টেমের বিস্তৃত পর্যবেক্ষণের সাথে, প্রাতিষ্ঠানিক স্তরের সিস্টেমগুলির জন্য একেবারে গুরুত্বপূর্ণ। খুচরা কোয়ান্টগুলিও এই ধারণাগুলি ব্যবহার করতে পারে এবং করা উচিত।
একটি শক্তিশালী সিস্টেম দূরবর্তীভাবে
রিমোট ডিপ্লয়িং বিবেচনা করার সময় প্রধান সমস্যাগুলির মধ্যে রয়েছে; সিপিইউ, র্যাম / সুইপ, ডিস্ক এবং নেটওয়ার্ক আই / ও, সিস্টেমের উচ্চ-প্রাপ্যতা এবং অতিরিক্ততা, ব্যাকআপ এবং পুনরুদ্ধার পরিকল্পনার মাধ্যমে ভালভাবে চিন্তা করা, সিস্টেমের সমস্ত দিকের বিস্তৃত লগিং পাশাপাশি ক্রমাগত সংহতকরণ, ইউনিট টেস্টিং এবং সংস্করণ নিয়ন্ত্রণ।
মারফির আইন মনে রেখো - যদি এটা ব্যর্থ হতে পারে তাহলে এটা ব্যর্থ হবে।
অ্যামাজন ওয়েব সার্ভিসেস, মাইক্রোসফ্ট অ্যাজুর, গুগল এবং র্যাকস্পেস সহ তুলনামূলকভাবে সরল ক্লাউড স্থাপনার প্রস্তাব দেওয়া অনেক বিক্রেতা রয়েছে। সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের কাজগুলির জন্য বিক্রেতাদের মধ্যে গিটহাব, বিটবাকেট, ট্র্যাভিস, লগগলি এবং স্প্লঙ্ক এবং আরও অনেকগুলি রয়েছে।
দুর্ভাগ্যবশত কোয়ান্টাম ট্রেডিং-এ কোন 'দ্রুত সমাধান' নেই। সফল হওয়ার জন্য অনেক পরিশ্রম এবং শেখার প্রয়োজন।
সম্ভবত নতুনদের (এবং কিছু মধ্যবর্তী কোয়ান্টের) জন্য একটি প্রধান বাধা হ'ল তারা সেরা
এটি আপনার ট্রেডিং অবকাঠামোতে প্রচুর সময় বিনিয়োগ করারও মূল্যবান। স্থাপন এবং পর্যবেক্ষণের মতো বিষয়গুলিতে সময় ব্যয় করুন। সর্বদা লেনদেনের ব্যয় হ্রাস করার চেষ্টা করুন, কারণ লাভজনকতা হ'ল ব্যয় হ্রাস করার মতোই এটি ট্রেডিংয়ের আয় অর্জনের বিষয়ে।
আমি আপনার নিজের ব্যাকটেস্টিং সিস্টেমটি লেখার পরামর্শ দিচ্ছি কেবল শিখার জন্য। আপনি এটি ব্যবহার করতে পারেন এবং এটিকে ক্রমাগত উন্নত করতে পারেন বা আপনি কোনও বিক্রেতা খুঁজে পেতে পারেন এবং তারপরে আপনার নিজের তৈরি করার সময় আপনি আবিষ্কার করেছেন এমন সমস্ত প্রশ্ন তাদের জিজ্ঞাসা করতে পারেন। এটি অবশ্যই আপনাকে বাণিজ্যিকভাবে উপলব্ধ সিস্টেমগুলির সীমাবদ্ধতা সম্পর্কে সচেতন করবে।
অবশেষে, সর্বদা পড়ুন, শিখুন এবং উন্নতি করুন। এখানে প্রচুর পাঠ্যপুস্তক, ট্রেড জার্নাল, একাডেমিক জার্নাল, কোয়ান্টাম ব্লগ, ফোরাম এবং ম্যাগাজিন রয়েছে যা ট্রেডিংয়ের সমস্ত দিক নিয়ে আলোচনা করে। আরও উন্নত কৌশলগত ধারণাগুলির জন্য আমি এসএসআরএন এবং আরএক্সআইভি - পরিমাণগত অর্থের পরামর্শ দিই।