شماریاتی منافع
بوٹ وی ایس کی آمدنی کے اعدادوشمار صرف ایک منحنی خطوط کو ریکارڈ کرتے ہیں۔ تکنیکی تجزیہ نہیں کیا جاسکتا ہے۔ یہ ٹیمپلیٹ تازہ ترین 1 ، پچھلے 1 ، تازہ ترین 7 ، پچھلے 7 ، تازہ ترین 30 ، پچھلے 30 اور ہر وقت کی آمدنی ، منافع ، ماہانہ منافع ، سالانہ منافع اور زیادہ سے زیادہ واپسی کے لئے خودکار اعدادوشمار انجام دے سکتا ہے۔
استعمال: اس ٹیمپلیٹ میں لاگپروفیٹ فنکشن کو $.LogProfit کے طور پر تبدیل کرنے کے لئے اس ٹیمپلیٹ کو متعارف کرایا گیا ہے۔ لاگپروفیٹ؛ اور لاگ اسٹیٹس کی جگہ پر $.ProfitSummary ((ابتدائی فنڈز) کی واپسی کی تار شامل کی گئی ہے۔
مثال کے طور پر function main (() { while ((true) { var t = exchange.GetTicker ((); .LogProfit ((t.Last) ؛ لاگ اسٹیٹس (($.ProfitSummary ((10000)); Sleep ((3600000) ؛ } }
نتائج دکھائیں:
1 دن: وصولی -78.44 یوآن ((-0.537%), ماہانہ -16.781%, سالانہ -204.169%, واپس لینے 1.106% گزشتہ 1 دن: وصولی 176.08 یوآن ((1.221٪) ، ماہانہ 38.226٪، سالانہ 465.087٪، واپسی 1.236٪ ساتویں دن: 771.74 یوآن ((5.599٪) وصول ، 24.141٪ ماہانہ ، 293.719٪ سالانہ ، 1.517٪ واپس لے لیا پچھلے 7 دن: 223.15 یوآن ((1.64٪) وصول ، 7.071٪ ماہانہ ، 86.039٪ سالانہ ، 0.9٪ واپس لے لیا 30 تاریخ: وصولی 1570،31 یوآن ((12.094٪) ، ماہانہ 12.111٪، سالانہ 147.352٪، واپسی 3.251٪ گزشتہ 30 دن: وصولی 200.12 یوآن ((1.565%) ، ماہانہ 1.567٪ ، سالانہ 19.076٪ ، 1.521٪ واپس لے لیا مجموعی طور پر: 4554.11 یوآن ((45.541٪) ، زیادہ سے زیادہ واپسی 3.251٪ ، اعداد و شمار کا وقت 74 دن 23 گھنٹے
$.LogProfit = function(profit) { var args = Array.prototype.slice.call(arguments); if (SYS_LOGPROFIT) { LogProfit.apply(this, args); } else { args.unshift('收益'); Log.apply(this,args); } var _history = $.GetAllProfit(); _history.push([ Math.floor(new Date().getTime()/1000), profit]); _G('profit_history', JSON.stringify(_history)); }; $.GetAllProfit = function() { var old = _G('profit_history') || '[]'; try { var _history = JSON.parse(old); return _history; } catch(e) { _G('profit_history', null); return []; } }; function filterProfit(from, to) { var arr = $.GetAllProfit(); if (!arr || arr.length === 0) return; var re, maxdrawback=0, lastProfit=0, maxProfit=false, maxdrawbackProfit=0; var earlest, latest; for(var i=0;i<arr.length;i++) { if (!arr[i]) continue; if (arr[i][0] > from && arr[i][0] <= to) { var profit = arr[i][1]; if (!earlest) earlest = arr[i]; latest = arr[i]; if (!lastProfit) lastProfit = profit; if (maxProfit === false || maxProfit < profit) maxProfit = profit; var drawback = maxProfit - profit; if (drawback > maxdrawback) { maxdrawback = drawback; maxdrawbackProfit = maxProfit; } } } if (!earlest || !latest) return; return [earlest, latest, maxdrawback, maxdrawbackProfit]; } function daysProfit(offset, days) { var from = getDaySecond( -offset+days); var to = getDaySecond(-offset); var arr = filterProfit( from, to ); if (!arr || !arr[0] || !arr[1]) return; var profitTime = arr[1][0] - arr[0][0]; if (!profitTime) return; var periodTime = to - from; var profit = arr[1][1] - arr[0][1]; var realPercent = profitTime*100 / periodTime; var expectedProfit = profit * 100 / realPercent; return { profit:profit, expectedProfit:expectedProfit, profitTime:profitTime, periodTime:periodTime, open: arr[0][1], close: arr[1][1], drawback: arr[2], drawbackProfit: arr[3] }; } function getDaySecond(days) { var d = new Date(); var now = d.getTime(); now -= days*86400000; d.setTime(now); return Math.floor(d.getTime() / 1000); } $.DaysProfit = function(days) { return filterProfit(days)[2]; }; $.ProfitSummary = function(initialBalance) { if (!initialBalance) return '没有传入初始资金'; var day = daysProfit(0, 1); var lastDay = daysProfit(-1, 1); var week = daysProfit(0,7); var lastWeek = daysProfit(-7,7); var month = daysProfit(0,30); var lastMonth = daysProfit(-30,30); var all = daysProfit(0, 10000); if (!all) return ''; var _days = Math.floor(all.profitTime / 86400); var text = []; var t = profitSummary(day, initialBalance); if (t) text.push('1日: '+t); t = profitSummary(lastDay, initialBalance); if (t) text.push('上1日: '+t); t = profitSummary(week, initialBalance); if (t && _days >= 7) text.push('7日: '+t); t = profitSummary(lastWeek, initialBalance); if (t) text.push('上7日: '+t); t = profitSummary(month, initialBalance); if (t && _days>=30) text.push('30日: '+t); t = profitSummary(lastMonth, initialBalance); if (t) text.push('上30日: '+t); if (all) { var _days = Math.floor(all.profitTime / 86400); all.profitTime %= 86400; var _hours = Math.floor(all.profitTime / 3600); var drawback = _N( all.drawback*100/(all.drawbackProfit+initialBalance), 3 )+'%'; text.push('总: 收'+_N(all.close,2)+'元('+_N(all.close*100/initialBalance,3)+'%),最大回撤'+drawback+',统计时间'+_days+'天'+_hours+'小时'); } return text.join('\n'); }; function profitSummary(p, base) { if (!p) return ''; var text = []; text.push('收'+_N(p.profit,2)+'元('+_N(p.profit*100/(base+p.open), 3)+'%)'); var month = expectProfit(p, 30, base); if (month) { text.push('月化'+month.percent+'%'); } var year = expectProfit(p, 365, base); if (year) { text.push('年化'+year.percent+'%'); } text.push('回撤'+ _N( p.drawback*100/(p.drawbackProfit+base), 3 )+'%' ); return text.join(','); } function expectProfit(p, days, base) { var expectSeconds = days*86400; if (expectSeconds < p.profitTime) return; return { profit: _N(p.profit * expectSeconds / p.profitTime, 2), percent: _N(p.profit * expectSeconds *100 / (p.profitTime * (base+p.open)),3) }; } function main() { while(true) { var t = exchange.GetTicker(); $.LogProfit(t.Last); LogStatus($.ProfitSummary(10000)); Sleep(3600000); } }
زون فینگ91اس ٹیمپلیٹ کا استعمال کرتے ہوئے ، ریورس کی رفتار بہت سست ہے۔
nxtplayerبہت شکریہ
لوگایا رابطہ کرنے کے لئے رابطہ کریں
یویکسآپ کا شکریہ، مجھے اس کی ضرورت ہے۔
مومیکسحمایت