পরিমাণগত ট্রেডিং এবং প্রোগ্রাম্যাটিক ট্রেডিংয়ের শিক্ষানবিশদের জন্য শেখার ক্ষেত্রে সবচেয়ে বড় অসুবিধা কি? সাধারণভাবে বলতে গেলে, এর কয়েকটি কারণ রয়েছেঃ
এআই প্রযুক্তির বিকাশের সাথে সাথে এই সমস্যার সমাধান কিছু পরিমাণে পাওয়া যেতে পারে।চ্যাটজিপিটিএফএমজেড প্ল্যাটফর্মের কৌশল সম্পাদক এবং চ্যাটজিপিটির সাথে সংহতকরণের জন্য নতুন আপগ্রেডের মাধ্যমে, এটি পরিমাণগত ট্রেডিং শেখার, গবেষণা এবং সৃষ্টির জন্য একটি সরঞ্জাম হিসাবে ব্যবহার করা যেতে পারে।FMZ কৌশল সম্পাদকের নতুন ফাংশনএকসাথে!
যদিও চ্যাটজিপিটির বর্তমান ক্ষমতা ইতিমধ্যে খুব শক্তিশালী, এবং এটি মানুষের প্রশ্নগুলি খুব ভালভাবে বুঝতে পারে, তবে এটি যে উত্তর দেয় তা এখনও যেমন কারণগুলির জন্য অত্যন্ত সংবেদনশীলঃপ্রশ্নের বর্ণনার সম্পূর্ণতা এবং নির্ভুলতা. যদি বর্ণিত দৃশ্য বা প্রশ্নের বিষয়বস্তু সঠিক না হয়, ChatGPT একটি নিখুঁত উত্তর প্রদান করতে অক্ষম হতে পারে। অতএব, কিছু সমস্যা সমাধানের জন্য এটি ব্যবহার করার সময়, তাদের সঠিকভাবে এবং সম্পূর্ণরূপে প্রকাশ করার চেষ্টা করা প্রয়োজন।
পরবর্তী, আমরা একটি কোড নকশা সমস্যা সমাধানের জন্য FMZ প্ল্যাটফর্ম কৌশল সম্পাদক এর ChatGPT ফাংশন ব্যবহার করব। FMZ প্ল্যাটফর্মে লগ ইন করুন এবং কৌশল সম্পাদনা পৃষ্ঠায় যান।
ফাঁকা জায়গায় ডান ক্লিক করুন, চ্যাট জিপিটি বিকল্প নির্বাচন করুন এবং কল আউট করতে ক্লিক করুনChatGPT
, অথবাChatGPT কল করতে Ctrl+K ব্যবহার করুন.
যদি আমি এখন পরিমাণগত ট্রেডিংয়ের নতুন শিক্ষার্থী হই, তাহলে আমার একটি প্রয়োজনীয়তা আছে:
যে কোন সময়কালের K-লাইন ডেটা সংকলন করতে এক মিনিটের K-লাইন ব্যবহার করুন।
একজন শিক্ষানবিস হিসাবে, আমার প্রোগ্রামিং দক্ষতা দুর্বল, এবং আমি সত্যিই জানি না কিভাবে এই ধরনের একটি অ্যালগরিদম লিখতে হয়। অতীতে, আমি শুধুমাত্র তথ্য অনুসন্ধান করতে এবং বিশেষজ্ঞদের সাহায্যের জন্য জিজ্ঞাসা করতে পারে। এখন, চ্যাটজিপিটি সঙ্গে, আমি সরাসরি উত্তর জন্য এটি জিজ্ঞাসা করতে পারেন। অবশ্যই, উপরে উল্লিখিত হিসাবে, সরাসরি প্রয়োজনীয়তা বর্ণনাঃ
তাই আসুন এই প্রয়োজনীয়তা বর্ণনা একটু বেশি সম্পূর্ণ করা যাকঃ
> On the FMZ platform, calling the exchange.GetRecords(60) function can obtain one-minute K-line data, and the data structure is: [{
> Time : Millisecond timestamp, // Start time of the period
> Open : 1000,
> High : 1500,
> Low : 900,
> Close : 1200,
> Volume : 1000000
> }, ...]
> Please design an algorithm that uses one-minute K-line data to synthesize any minute's K-line data. For periods that can be divided by 60 minutes, start counting from the whole point of 0 minutes. Implement it in Javascript language, write this algorithm as a separate function, test it in the function main() and use $.PlotRecords(KLineData, "name") for drawing.
চ্যাটজিপিটি কল করার পর, আপনি উপরে উল্লিখিত অপ্টিমাইজড প্রশ্নের বিষয়বস্তু পূরণ করতে পারেন।
চ্যাট জিপিটি কাজ শুরু করে।
লেখার কাজ শেষ হওয়ার জন্য অপেক্ষা করো।
কখনো কখনোChatGPT
যোগ করেকোডটি মোড়ানোর জন্য চিহ্ন, যা মার্কডাউনে নির্দেশ করে যে মোড়ানো বিষয়বস্তু কোড। সুতরাং আমাদের কেবল প্রথম এবং শেষ লাইন মুছে ফেলতে হবে। যেহেতু আমি এটি ব্যবহার করতে বলেছি$.PlotRecords(KLineData, "name")
অঙ্কনের জন্য, কৌশলটি অঙ্কন করার জন্য একটি অঙ্কন লাইব্রেরিতে উল্লেখ করতে হবে। অঙ্কনের উদ্দেশ্য হল চ্যাট জিপিটি কোড দ্বারা সংশ্লেষিত কে-লাইন ডেটা সঠিক কিনা তা যাচাই করা।
একটি টেমপ্লেট লাইব্রেরি কী, আমি এখানে বিস্তারিত জানাব না; আপনি আরও তথ্যের জন্য FMZ
যে কোডটি দেওয়া হয়েছেChatGPT
আমি ব্যাকটেস্টিং সিস্টেমের ডিফল্ট কে-লাইন পিরিয়ড ৫ মিনিট সেট করেছি, যা চ্যাট জিপিটি
প্রাথমিকভাবে, মনে হচ্ছে যে চ্যাটজিপিটির দেওয়া অ্যালগরিদমটি ৫ মিনিটের কে-লাইন থেকে ১ মিনিটের কে-লাইন সংশ্লেষণ করার জন্য সঠিক।
/*
Synthesize arbitrary minute K-line data
@param {Array} records - One-minute K-line data
@param {Number} period - Synthetic period, unit in minutes
@return {Array} - Synthesized K-line data
*/
function composeKLineData(records, period) {
var result = [];
var index = 0;
var open = records[0].Open;
var high = records[0].High;
var low = records[0].Low;
var close = records[0].Close;
var volume = records[0].Volume;
var time = records[0].Time - records[0].Time % (period * 60 * 1000);
for (var i = 1; i < records.length; i++) {
var record = records[i];
if (record.Time < time + period * 60 * 1000) {
high = Math.max(high, record.High);
low = Math.min(low, record.Low);
close = record.Close;
volume += record.Volume;
} else {
result[index] = {
Time: time,
Open: open,
High: high,
Low: low,
Close: close,
Volume: volume
};
index++;
open = record.Open;
high = record.High;
low = record.Low;
close = record.Close;
volume = record.Volume;
time = record.Time - record.Time % (period * 60 * 1000);
}
}
result[index] = {
Time: time,
Open: open,
High: high,
Low: low,
Close: close,
Volume: volume
};
return result;
}
function main() {
var records = exchange.GetRecords(60);
var kLineData = composeKLineData(records, 5); // Synthesize 5-minute K-line data
$.PlotRecords(kLineData, "KLineData");
}
FMZcomposeKLineData
চ্যাটজিপিটি দ্বারা লিখিত কোডে ফাংশন, মেনু প্রদর্শনের জন্য ডান ক্লিক করুনঃ
এমনকি চ্যাটজিপিটি অপ্টিমাইজেশান পরামর্শ এবং অপ্টিমাইজড কোড প্রদান করতে পারে।
এফএমজেড এডিটর আপডেট, চ্যাটজিপিটি ফাংশন যুক্ত করার পাশাপাশি এটি অনেক সুবিধাজনক ফাংশন যুক্ত করে অনলাইন প্রোগ্রামিংয়ের অভিজ্ঞতাকে অনুকূল করে তোলে এবং উন্নত করে।
মেনু প্রদর্শনের জন্য ফাঁকা জায়গায় বা কোড নির্বাচন করার সময় ডান ক্লিক করুন।
এটি বিভিন্ন শর্টকাট কী সংমিশ্রণ প্রদর্শন করে।
স্থানীয় ভেরিয়েবলের নাম পরিবর্তন করতে Symbol এর নাম পরিবর্তন করুন।
এটি শুধুমাত্র ভেরিয়েবলের নাম পরিবর্তন করেছেrecords
মধ্যেmain
উপরের ছবির ফাংশন।
পরিবর্তন করুন সমস্ত ঘটনাক্রমে, একটি পরিবর্তনশীল নাম, শব্দ নির্বাচন করুন, এবং একই সময়ে টেক্সট সব একই বিষয়বস্তু সম্পাদনা করুন.
বিন্যাস নির্বাচন, নির্বাচিত কোড বিন্যাস.
ডকুমেন্ট ফরম্যাট করুন, সব কোড ফরম্যাট করুন।
সংজ্ঞা দেখুনঃ সংজ্ঞা দেখুন। রেফারেন্স-এ যান: রেফারেন্স-এ যান। সিম্বল-এ যান... ভেরিয়েবল নাম, ফাংশন নাম ইত্যাদিতে যান।
Peek Definition: সংজ্ঞা পূর্বরূপ, বর্তমান কোড লাইন ছাড়াই নির্বাচিত কোডের সংজ্ঞা দেখুন। পিক রেফারেন্সঃ কোট প্রিভিউ, বর্তমান কোড লাইনের রেফারেন্সগুলি অন্য কোড লাইনে বর্তমান কোড লাইন ছাড়াই দেখতে পারেন, এটি দ্রুত যেতে পারে, যাতে কোড লজিক এবং কাঠামো আরও ভালভাবে বুঝতে পারে।