ভবিষ্যতে আর্থিক টাইমসারিগুলি 1 বা আরও বেশি পদক্ষেপের পূর্বাভাস দেওয়ার জন্য মেশিন লার্নিং কীভাবে ব্যবহার করতে হয় সে সম্পর্কে আমি উপলব্ধি করার চেষ্টা করছি।
আমার কিছু বর্ণনামূলক ডেটা সহ একটি আর্থিক টাইমরিজ রয়েছে এবং আমি একটি মডেল তৈরি করতে চাই এবং তারপরে মডেলটি n-steps এর পূর্বে ভবিষ্যদ্বাণী করতে ব্যবহার করতে চাই।
আমি এখন পর্যন্ত যা করছি তা হ'ল:
getSymbols("GOOG")
GOOG$sma <- SMA(Cl(GOOG))
GOOG$range <- GOOG$GOOG.High-GOOG$GOOG.Low
tail(GOOG)
GOOG.Open GOOG.High GOOG.Low GOOG.Close GOOG.Volume GOOG.Adjusted sma range
2013-05-07 863.01 863.87 850.67 857.23 1959000 857.23 828.214 13.20
2013-05-08 857.00 873.88 852.91 873.63 2468300 873.63 834.232 20.97
2013-05-09 870.84 879.66 868.23 871.48 2200600 871.48 840.470 11.43
2013-05-10 875.31 880.54 872.16 880.23 1897700 880.23 848.351 8.38
2013-05-13 878.89 882.47 873.38 877.53 1448500 877.53 854.198 9.09
2013-05-14 877.50 888.69 877.14 887.10 1579300 887.10 860.451 11.55
তারপরে আমি এই ডেটাতে একটি র্যান্ডমফোরস্ট মডেল লাগিয়েছি।
fit <- randomForest(GOOG$GOOG.Close ~ GOOG$sma + GOOG$range, GOOG)
যা আশ্চর্যজনকভাবে ভাল ফিট করে বলে মনে হচ্ছে:
> fit
Call:
randomForest(formula = GOOG$GOOG.Close ~ GOOG$sma + GOOG$range, data = GOOG)
Type of random forest: regression
Number of trees: 500
No. of variables tried at each split: 1
Mean of squared residuals: 353.9844
% Var explained: 97.28
এবং এটি পূর্বাভাস দেওয়ার জন্য ব্যবহার করার চেষ্টা করেছেন:
predict(fit, GOOG, n.ahead=2)
কিন্তু এই পূর্বাভাস কার্যকর হয়নি।
আমি ক্লোজটি পূর্বাভাস দেওয়ার চেষ্টা করি, মডেলটি ফিট করার আগে, আমি যতটা পূর্বাভাস চাই তার চেয়ে অনেক পদক্ষেপের দ্বারা আমি অন্যান্য ভেরিয়েবলগুলিকে পিছিয়ে রাখতে পারি?
সম্ভবত আমার প্রচুর পরিমাণে অন্যান্য জিনিসও আমলে নেওয়া উচিত তবে এটি মেশিন-লার্নিংয়ের চেষ্টা করে দেখানো আমার প্রথম পদক্ষেপ।