Commit 31da9710 authored by Ahmad Nemati's avatar Ahmad Nemati

init

parent 675c8646
...@@ -17,8 +17,8 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) { ...@@ -17,8 +17,8 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) {
let commision = config.commision let commision = config.commision
let money = config.base let money = config.base
let total = 0 let total = 0
let days = 0
let maxDays = 0 let maxDays = 0
let startDays=0
let allTotal = 0 let allTotal = 0
let maxReserve = 0 let maxReserve = 0
let maxMeta = 0 let maxMeta = 0
...@@ -28,6 +28,7 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) { ...@@ -28,6 +28,7 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) {
let maxLevel = 0 let maxLevel = 0
// console.log(data) // console.log(data)
let step = 0 let step = 0
let reserv = 0 let reserv = 0
let meta = 0 let meta = 0
...@@ -54,8 +55,10 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) { ...@@ -54,8 +55,10 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) {
return null return null
for (let i = 0; i < data.length; i++) { for (let i = 0; i < data.length; i++) {
let obj let obj
if (step === 0) if (step === 0) {
startDays=data[i].openDate
money = config.base money = config.base
}
else { else {
if (config.type === zarib) if (config.type === zarib)
money = lastMoney * config.param money = lastMoney * config.param
...@@ -87,11 +90,9 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) { ...@@ -87,11 +90,9 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) {
if (step > riskFreeLevel) if (step > riskFreeLevel)
riskfree = true riskfree = true
let d = inlineCheck(money, commision, data[i], profit, lastCom, config.target, riskfree) let d = inlineCheck(money, commision, data[i], profit, lastCom, config.target, riskfree)
let tempDay = getMinDiff(data[i].openDate, data[i].closeDate)
days = days + tempDay
if (days > maxDays)
maxDays = days
if (d.reserve < 0 && Math.abs(d.reserve) > Math.abs(maxReserve)) if (d.reserve < 0 && Math.abs(d.reserve) > Math.abs(maxReserve))
maxReserve = d.reserve maxReserve = d.reserve
...@@ -126,7 +127,6 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) { ...@@ -126,7 +127,6 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) {
obj.maxAllocatedMoney = maxAllocatedMoney obj.maxAllocatedMoney = maxAllocatedMoney
obj.maxLevel = maxLevel obj.maxLevel = maxLevel
obj.step = step obj.step = step
obj.days = days
obj.maxDays = maxDays obj.maxDays = maxDays
...@@ -149,9 +149,13 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) { ...@@ -149,9 +149,13 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs) {
} }
if (d.done === true) { if (d.done === true) {
let endDays = getMinDiff(startDays, data[i].closeDate)
// console.log(typeof endDays)
//console.log(endDays)
if (endDays > maxDays)
maxDays = endDays
// console.log(maxDays)
days = 0
levels.push(step) levels.push(step)
step = 0 step = 0
reserv = 0 reserv = 0
......
...@@ -2,11 +2,11 @@ let arr=[ ...@@ -2,11 +2,11 @@ let arr=[
{ {
type: "zarib", type: "dynamic",
commision: 0.001, commision: 0.001,
paramStart: 1, paramStart: 0,
paramEnd: 2, paramEnd: 48,
inidicator: 0.1 inidicator: 2
} }
...@@ -20,7 +20,7 @@ run() ...@@ -20,7 +20,7 @@ run()
async function run() async function run()
{ {
let obj={sort:'profitPerMonthDrawDown',alocatedReserve:3,alocatedReserveCompound:3,risk:1,start:2000,pfTrade:2,side:'both',riskFreeLevel:100,onlyShortLong:false,loss:0,level:200,dur:1500} let obj={sort:'profitPerMonthDrawDown',alocatedReserve:3,alocatedReserveCompound:3,risk:0,start:10000,pfTrade:2,side:'both',riskFreeLevel:100,onlyShortLong:false,loss:0,level:200,dur:1500}
let detail=['configs2.json-211021092159_O1_BNC_BTCUSD_Lp1_Y211020a - Copy_Mn.csv&zarib param:1.1 base:200 target:1'] let detail=['configs2.json-211021092159_O1_BNC_BTCUSD_Lp1_Y211020a - Copy_Mn.csv&zarib param:1.1 base:200 target:1']
obj.detail=detail obj.detail=detail
let all=[] let all=[]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment