১) ডিপিও সূচক কিভাবে ব্যবহার করা হয়?
ডিপিও সূচকের সূত্র জানতে হলে প্রথমে জানতে হবেঃ
1 , MA = N দিনের সরল চলমান গড়;
2। DPO = ক্লোজিং প্রাইস-MA ((N/2+1) দিনের সরল চলমান গড়;
৩. MADPO = DPO এর M দিনের সরল চলমান গড়;
এর মধ্যে, N=21, M=6।
২) ডিপিও সূচক কিভাবে ব্যবহার করা হয়:
০-এর উপরে, একটি ওভারবই লাইন স্থাপন করুন, যখন ডিপিও ওভারবই লাইনে ওঠে, তখন শেয়ারের দাম স্বল্পমেয়াদী উচ্চতায় থাকে।
০-অক্ষের নিচে একটি ওভারসোল লাইন স্থাপন করুন, যখন ডিপিও ওভারসোল লাইনে ওঠে তখন শেয়ারের দাম স্বল্পমেয়াদী নিম্ন অবস্থানে থাকে।
৩. যদি ডিপিও সূচকটি ০-অক্ষের উপরে থাকে, তবে এটি একটি মাল্টি-হেড মার্কেটে অবস্থিত। যদি ডিপিও সূচকটি ০-অক্ষের উপরে নেতিবাচক মান দিয়ে অতিক্রম করে তবে এটি একটি কেনার সংকেত।
৪. যদি ডিপিও সূচকটি ০ অক্ষের নীচে থাকে, তবে এটি খালি বাজারে অবস্থিত। যদি ডিপিও সূচকটি ০ অক্ষের নীচে নেতিবাচক থেকে নীচে চলে যায়, তবে এটি একটি বিক্রয় সংকেত।
/*
计算方法:
1、MA的N日收盘价加总/N
2、DPO = 收盘价 - ((n / 2) + 1)日的MA
3、MADPO = DPO M日的移动平均
N = 21, M = 6
*/
// 指标算法
function DPO(r, n) {
var arrDpo = []
for (var i = 0 ; i < r.length ; i++) {
var currRecords = []
for (var j = 0 ; j < i ; j++) {
currRecords.push(r[j])
}
var ma = TA.MA(currRecords, (_N(n / 2, 0) + 1))
var dpo = NaN
if (currRecords.length == 0 || !ma || ma.length == 0 || !ma[ma.length - 1]) {
dpo = NaN
} else {
var close = r[i].Close
dpo = close - ma[ma.length - 1]
}
arrDpo.push(dpo)
}
return arrDpo
}
function MADPO(dpo, m) {
return TA.MA(dpo, m)
}
// 使用指标例子
function main() {
var r = exchange.GetRecords()
var dpo = DPO(r, 21)
Log(_D(r[r.length - 1].Time), "dpo on last bar:", dpo[dpo.length - 1])
Log(_D(r[r.length - 2].Time), "dpo on pre bar:", dpo[dpo.length - 2])
var madpo = MADPO(dpo, 6)
Log(_D(r[r.length - 1].Time), "madpo on last bar:", madpo[madpo.length - 1])
Log(_D(r[r.length - 2].Time), "madpo on pre bar:", madpo[madpo.length - 2])
}
给你个思路,不保证对,没验证过。
- 1
