অ্যাডাপ্টিভ মুভিং এভারেজ KAMA এর ভূমিকা
নাম অনুসারে, অভিযোজিত মুভিং এভারেজ (KAMA) মুভিং এভারেজ (মুভিং এভারেজ) ক্যাটাগরির অন্তর্গত, কিন্তু প্রচলিত মুভিং এভারেজ থেকে যা আলাদা তা হল এটি খুবই "স্মার্ট"। আমরা জানি যে সাধারণ চলমান গড়গুলির অনেকগুলি ত্রুটি রয়েছে, যেমন: স্বল্প-মেয়াদী চলমান গড়গুলি মূল্য প্রবণতার কাছাকাছি এবং খুব সংবেদনশীল, তবে সহজেই মিথ্যা সংকেত তৈরি করতে পারে দীর্ঘমেয়াদী চলমান গড়গুলি প্রবণতা বিচার করার ক্ষেত্রে খুব সঠিক; বাজার কিছু সময়ের জন্য চলে যাওয়ার পরে প্রতিক্রিয়া।
KAMA এর "স্মার্টনেস" বর্তমান বাজার অবস্থার উপর ভিত্তি করে স্বায়ত্তশাসিতভাবে সংবেদনশীলতা সামঞ্জস্য করার ক্ষমতাতে প্রতিফলিত হয়, অর্থাৎ, অস্থিরতা। এর উপলব্ধি ফর্ম হল: অস্থির বাজারে, KAMA-এর পরিবর্তনগুলি উল্লেখযোগ্যভাবে ধীর হয়ে যায় যখন প্রবণতা আসে, এটি দ্রুত প্রতিক্রিয়া জানায়। তাই বাস্তব লেনদেনে, এর সুবিধা হল যে এটি শুধুমাত্র "দৈনিক বিশৃঙ্খলা" দ্বারা সৃষ্ট লেনদেনের খরচ কমাতে পারে না, তবে বাজার শুরু হওয়ার সময় বোর্ডে উঠতেও সক্ষম হয়।
চার্টে KAMA
কিভাবে KAMA গণনা করা যায়
- দিকনির্দেশনা (DIR) = সমাপনী মূল্য - সমাপনী মূল্য n দিন আগে
- অস্থিরতা (VIR) = যোগফল(abs(ক্লোজিং প্রাইস - আগের ট্রেডিং দিনের সমাপ্তি মূল্য), n)
- দক্ষতা (ER) = দিকনির্দেশনা / অস্থিরতা
- দ্রুত = 2 / (n1 + 1)
- ধীর = 2 / (n2 + 1)
- স্মুথিং (CS) = দক্ষতা * (দ্রুত - ধীর) + ধীর
- সহগ (CQ) = মসৃণ * মসৃণ
- KAMA = সূচকীয় ওজনযুক্ত গড় (গতিশীল চলমান গড় (ক্লোজিং প্রাইস, সহগ), 2)
তাদের মধ্যে, n, n1, এবং n2 হল সমস্ত পিরিয়ড প্যারামিটার ডিফল্টভাবে, n পিরিয়ড নম্বর হল 10, n1 হল স্বল্প-মেয়াদী পিরিয়ড নম্বর হল 2 এবং n2 হল দীর্ঘমেয়াদী পিরিয়ড সংখ্যা 30৷ এটি KAMA লেখক পেরি কাউফম্যান দ্বারা স্বীকৃত পরামিতিগুলির একটি সেট যা n1 এবং n2 হল দ্রুত চলমান গড়ের সময়কালের সংখ্যা, n1 বড় হয়, মসৃণ KAMA হবে।
KAMA এর গণনা পদ্ধতি হল: প্রথমে দিক (DIR) এবং অস্থিরতা (VIR) গণনা করুন, এবং তারপর দুটির অনুপাতের উপর ভিত্তি করে দক্ষতা গণনা করুন। দক্ষতা (ER) হল মূল্য পরিবর্তনের মাত্রার একটি পরিমাপ এবং সহজভাবে গণনা করা হয়: দিক / অস্থিরতা। গণনার ফলাফল ০ এবং ১ এর মধ্যে। যখন ER মান ০ এর কাছাকাছি থাকে, তখন এটি নির্দেশ করে যে বাজারটি একটি অস্থির অবস্থায় রয়েছে। যখন ER মান 1 এর কাছাকাছি থাকে, তখন এটি নির্দেশ করে যে বাজারটি একটি ট্রেন্ডিং অবস্থায় রয়েছে।
যখন দক্ষতা (ER) গণনা করা হয়, তখন দ্রুত গতিশীল গড় এবং ধীর গতিশীল গড় সমন্বয় করে স্মুথিং কনস্ট্যান্ট (CS) বের করা যেতে পারে: দক্ষতা * (দ্রুত - ধীর) + ধীর। CS ট্রেন্ড অপারেশনের গতির প্রতিনিধিত্ব করে CS-এর গণনার সূত্র অনুসারে, আমরা দেখতে পারি যে CS-এর পরিবর্তনগুলি সর্বদা ER-এর পরিবর্তনের সমানুপাতিক।
তারপর মসৃণ শক্তির উপর ভিত্তি করে সহগ (CQ) গণনা করা হয় যার উদ্দেশ্য হল ধীর গতির প্যারামিটারকে গণনায় আরও গুরুত্বপূর্ণ ভূমিকা পালন করা, যা আরও রক্ষণশীল পদ্ধতি। KAMA এর চূড়ান্ত স্মুথিং ডিগ্রী সহগ (CQ) দ্বারা নির্ধারিত হয়, KAMA এর গণনাতে, সহগ (CQ) শেষ দুটি চলমান গড় স্মুথিংয়ের সময়সীমা নির্ধারণ করে, যথা: সূচকীয় ওজনযুক্ত গড় (ডাইনামিক মুভিং এভারেজ (ক্লোজিং প্রাইস) , সহগ), 2)।
কিভাবে KAMA ব্যবহার করবেন
যদিও KAMA-এর গণনা পদ্ধতি খুবই জটিল, তবে এর ব্যবহার সাধারণ চলমান গড়গুলির মতোই, এটি শুধুমাত্র বাজারের প্রবণতা বিচার করতে পারে না, বরং সুনির্দিষ্ট ক্রয়-বিক্রয়ের জন্যও ব্যবহার করা যেতে পারে। যেহেতু এটি খুব "স্মার্ট" তাই এটি অনেক ট্রেডিং কৌশলে ব্যবহার করা যেতে পারে এবং এমনকি ডিজিটাল মুদ্রায় চেষ্টা করার মতো।
- যখন দাম KAMA-এর চেয়ে বেশি হয় এবং KAMA ঊর্ধ্বমুখী হয়, তখন একটি দীর্ঘ অবস্থান খুলুন।
- যখন দাম KAMA থেকে কম হয়, এবং KAMA নিম্নগামী হয়, তখন একটি ছোট অবস্থান খোলা হয়।
- যখন দাম KAMA থেকে কম হয়, বা KAMA কমে যায়, তখন লং পজিশন বন্ধ হয়ে যায়।
- যখন দাম KAMA-এর থেকে বেশি হয়, বা KAMA বেড়ে যায়, তখন শর্ট পজিশন বন্ধ হয়ে যায়।
KAMA এর উপর ভিত্তি করে একটি ট্রেডিং কৌশল তৈরি করুন
ধাপ 1: KAMA গণনা করুন
লক্ষ্য করুন! উপরের বাম কোণে প্রোগ্রামিং ভাষা নির্বাচন করুন:My语言. তালিব লাইব্রেরিতে ইতিমধ্যেই একটি রেডিমেড KAMA রয়েছে, কিন্তু এটিতে শুধুমাত্র একটি বাহ্যিক প্যারামিটার (n) পিরিয়ড রয়েছে এবং n1 এবং n2 2 এবং 30 এ ডিফল্ট হয়েছে। এই নিবন্ধের কৌশলগুলি শুধুমাত্র সরাসরি ব্যবহারের জন্য শক্তিশালী হ্যান্ড-অন দক্ষতার সাথে বন্ধুরাও তাদের নিজস্ব লিখতে পারে। তারপর আমার ভাষা সরাসরি জাভাস্ক্রিপ্ট ভাষার সাথে মিশ্রিত করা যেতে পারে নিম্নলিখিত কোডে মনোযোগ দিন:
%% // My语言内JavaScript的标准格式
scope.KAMA = function() {
var r = _C(exchange.GetRecords); // 获取K线数组
if (r.length > 140) { // 过滤K线长度
var kama = talib.KAMA(r, 140); // 调用talib库计算KAMA
return kama[kama.length - 2]; // 返回KAMA的具体数值
}
return;
}
%% // My语言内JavaScript的标准格式
ধাপ 2: ট্রেডিং শর্ত গণনা করুন এবং একটি অর্ডার দিন
%%
scope.KAMA = function() {
var r = _C(exchange.GetRecords);
if (r.length > 140) {
var kama = talib.KAMA(r, 140);
return kama[kama.length - 2];
}
return;
}
%%
K^^KAMA; // 把KAMA打印到图表上
A:CLOSE; // 把收盘价打印到图表上
K > REF(K, 1) && CLOSE > K,BK; // 开多
K < REF(K, 1) && CLOSE < K,SK; // 开空
K < REF(K, 1) || CLOSE < K,SP; // 平多
K > REF(K, 1) || CLOSE > K,BP; // 平空
ধাপ 3: কৌশল সংকেত ফিল্টারিং পদ্ধতি সেট করুন
%%
scope.KAMA = function() {
var r = _C(exchange.GetRecords);
if (r.length > 140) {
var kama = talib.KAMA(r, 140);
return kama[kama.length - 2];
}
return;
}
%%
K^^KAMA;
A:CLOSE;
K > REF(K, 1) && CLOSE > K,BK;
K < REF(K, 1) && CLOSE < K,SK;
K < REF(K, 1) || CLOSE < K,SP;
K > REF(K, 1) || CLOSE > K,BP;
AUTOFILTER; // 启用一开一平信号过滤机制
কৌশল ব্যাকটেস্ট
প্রকৃত ট্রেডিং পরিবেশের কাছাকাছি হওয়ার জন্য, আমরা ব্যাকটেস্টিংয়ের সময় স্ট্রেস পরীক্ষার জন্য খোলা এবং বন্ধ করার অবস্থানের জন্য 2 টি টিক ব্যবহার করেছি:
- বিনিময়: বিটমেক্স
- বাজারের বৈচিত্র্য: XBTUSD
- ট্রেডিং বৈচিত্র্য: XBTUSD
- সময়: জুলাই 1, 2017 ~ 1 জুলাই, 2019
- কে-লাইন চক্র: দৈনিক লাইন
- স্লিপেজ: খোলা এবং বন্ধ করার অবস্থানের জন্য প্রতিটি 2 টি টিক
পরীক্ষার পরিবেশ

রাজস্ব বিবরণ

তহবিল বক্ররেখা

শুধুমাত্র উপরের ব্যাকটেস্ট ফলাফলগুলি থেকে বিচার করলে, এই সহজ KAMA কৌশলটি 2018 সালে ডিজিটাল কারেন্সির সুপার বিয়ার মার্কেটে সত্যিকার অর্থে প্রত্যাশা পূরণ করেছিল, এবং যখন বাজারটি দীর্ঘ সময়ের মধ্যে ছিল তখন মূলধনের বক্ররেখা একটি বড় রিট্রেসমেন্ট দেখায়নি। -মেয়াদী ওঠানামা, সামনে এবং পিছনে কোন খোলা এবং বন্ধ করার অবস্থান ছিল না, যার ফলে অপ্রয়োজনীয় ক্ষতি হয়। একই সময়ে, এটি 2019 ষাঁড়ের বাজারেও ভাল পারফর্ম করেছে।
কৌশল সোর্স কোড
সারসংক্ষেপ
একটি চমৎকার কৌশল যা বাস্তবায়ন করা যেতে পারে সময়ের সাথে সাথে এই নিবন্ধের কৌশলটিতে এখনও অপ্টিমাইজেশন এবং আপগ্রেড করার জন্য অনেক জায়গা রয়েছে, যেমন নির্দিষ্ট ফিল্টারিং শর্ত, সক্রিয় লাভ-লাভ এবং স্টপ-লস শর্তাবলী যোগ করা। চলমান গড় হিসাবে, KAMA সাধারণ চলমান গড়গুলির সুবিধা এবং অসুবিধাগুলি উত্তরাধিকারসূত্রে পায়, একই সময়ে সেগুলিকে উপজীব্য করে৷ একটি অপ্রত্যাশিত বাজারে, এমনকি একটি "সর্বোত্তম প্যারামিটার" ঠিক করাও ভবিষ্যতের বাজারের অবস্থার সাথে খাপ খাইয়ে নেওয়া কঠিন হবে তাই, বাজারের পরিবর্তনের সাথে সাথে পরিবর্তনের এই পদ্ধতিটি একটি ভাল পছন্দ হতে পারে।
大神,求教一下,kama最后那一步的代码怎么写啊?KAMA = 指数加权平均(动态移动平均(收盘价, 系数), 2)就是这个。我搜了一下有的说是写成KAMA = 前一个KAMA + 系数 * (当前价格 - 前一个KAMA)。问题是计算最开始的第一个KAMA的值的时候,是没有“前一个KAMA”的。求指点。
- 1


