Commit 27c21510 authored by Ahmad Nemati's avatar Ahmad Nemati

git pu

parent d67e1fdb
...@@ -14,7 +14,7 @@ let avgDrawdown = 0 ...@@ -14,7 +14,7 @@ let avgDrawdown = 0
let avgProfit = 0 let avgProfit = 0
function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, maxTradeDays, targetPercentage, candlesData, fft, ProfitZeroProfit, fftRunup, ProfitZeroProfitRunup, ProfitZeroDrawDownProfit, ProfitZeroDrawDown, ddPlusRunCount, RunupDrawDownZeroRunupDrawDown,ProfitZeroRunupProfit,ProfitZeroRunupDrawDown,RunUpDrawDownZeroProfit,RunUpDrawDownZeroDrawDownProfit,RunUpDrawDownZeroDrawdown,RunUpDrawDownZeroRunupProfit, usage) { function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, maxTradeDays, targetPercentage, candlesData, fft, ProfitZeroProfit, fftRunup, ProfitZeroProfitRunup, ProfitZeroDrawDownProfit, ProfitZeroDrawDown, ddPlusRunCount, RunupDrawDownZeroRunupDrawDown,ProfitZeroRunupProfit,ProfitZeroRunupDrawDown,RunUpDrawDownZeroProfit,RunUpDrawDownZeroDrawDownProfit,RunUpDrawDownZeroDrawdown,RunUpDrawDownZeroRunupProfit,RunupZeroRunupDrawDown,RunupZeroProfit,RunupZeroProfitDrawDown,RunupZeroDrawDown,RunupZeroProfitRunup, usage) {
let type = config.type + ' param:' + config.param + ' base:' + config.base + ' target:' + config.target + ' targetPercentage:' + targetPercentage.enable let type = config.type + ' param:' + config.param + ' base:' + config.base + ' target:' + config.target + ' targetPercentage:' + targetPercentage.enable
if (usage === 'fft') { if (usage === 'fft') {
type = type + ' ' + usage + ' ' + fft type = type + ' ' + usage + ' ' + fft
...@@ -51,6 +51,26 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -51,6 +51,26 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
else if (usage === 'RunUpDrawDownZeroRunupProfit') { else if (usage === 'RunUpDrawDownZeroRunupProfit') {
type = type + ' ' + usage + ' ' + RunUpDrawDownZeroRunupProfit type = type + ' ' + usage + ' ' + RunUpDrawDownZeroRunupProfit
} }
else if (usage === 'RunupZeroRunupDrawDown') {
type = type + ' ' + usage + ' ' + RunupZeroRunupDrawDown
}
else if (usage === 'RunupZeroProfit') {
type = type + ' ' + usage + ' ' + RunupZeroProfit
}
else if (usage === 'RunupZeroProfitDrawDown') {
type = type + ' ' + usage + ' ' + RunupZeroProfitDrawDown
}
else if (usage === 'RunupZeroDrawDown') {
type = type + ' ' + usage + ' ' + RunupZeroDrawDown
}
else if (usage === 'RunupZeroProfitRunup') {
type = type + ' ' + usage + ' ' + RunupZeroProfitRunup
}
...@@ -116,6 +136,14 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -116,6 +136,14 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
let diffDrawdownProfitAll = 0 let diffDrawdownProfitAll = 0
let RunupDrawDownDiffDrawdownProfitAll = 0 let RunupDrawDownDiffDrawdownProfitAll = 0
let VarRunupZeroDrawDown=0
let VarRunupZeroProfit=0
let VarRunupZeroProfitDrawDown=0
let VarRunupZeroProfitRunup=0
let VarRunupZeroRunupDrawDown=0
let dur let dur
try { try {
dur = getNewMinDiff(data[0].openDate, data[data.length - 1].closeDate) dur = getNewMinDiff(data[0].openDate, data[data.length - 1].closeDate)
...@@ -230,6 +258,45 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -230,6 +258,45 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
runBefore = true runBefore = true
} }
else if (usage === 'RunupZeroRunupDrawDown') {
if (VarRunupZeroRunupDrawDown > RunupZeroRunupDrawDown)
runBefore = false
else
runBefore = true
}
else if (usage === 'RunupZeroProfit') {
if (VarRunupZeroProfit > RunupZeroProfit)
runBefore = false
else
runBefore = true
}
else if (usage === 'RunupZeroProfitDrawDown') {
if (VarRunupZeroProfitDrawDown > RunupZeroProfitDrawDown)
runBefore = false
else
runBefore = true
}
else if (usage === 'RunupZeroDrawDown') {
if (VarRunupZeroDrawDown > RunupZeroDrawDown)
runBefore = false
else
runBefore = true
}
else if (usage === 'RunupZeroProfitRunup') {
if (VarRunupZeroProfitRunup > RunupZeroProfitRunup)
runBefore = false
else
runBefore = true
}
} }
...@@ -261,9 +328,18 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -261,9 +328,18 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
if (data[i].runUp < avgRunup) { if (data[i].runUp < avgRunup) {
VarRunupZeroRunupDrawDown = VarRunupZeroRunupDrawDown + (data[i].runUp + data[i].drawDown)
VarRunupZeroProfit = VarRunupZeroProfit + data[i].profit
VarRunupZeroProfitDrawDown = VarRunupZeroProfitDrawDown + (data[i].drawDown - data[i].profit)
VarRunupZeroDrawDown = VarRunupZeroDrawDown + data[i].drawDown
VarRunupZeroProfitRunup=VarRunupZeroProfitRunup+(data[i].runUp + data[i].profit)
} else { } else {
VarRunupZeroRunupDrawDown=0
VarRunupZeroProfit=0
VarRunupZeroProfitDrawDown=0
VarRunupZeroDrawDown=0
VarRunupZeroProfitRunup=0
//zero //zero
} }
...@@ -399,6 +475,9 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -399,6 +475,9 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
obj = d obj = d
obj.signal = data[i] obj.signal = data[i]
obj.avgRunup=avgRunup
obj.avgDrawdown=avgDrawdown
// obj.signal.openTimeStamp = data[i].unixOpen // obj.signal.openTimeStamp = data[i].unixOpen
// obj.signal.closeTimeStamp = data[i].unixClose // obj.signal.closeTimeStamp = data[i].unixClose
......
...@@ -75,6 +75,15 @@ async function run() { ...@@ -75,6 +75,15 @@ async function run() {
i.RunUpDrawDownZeroRunupProfit=config.RunUpDrawDownZeroRunupProfit i.RunUpDrawDownZeroRunupProfit=config.RunUpDrawDownZeroRunupProfit
i.RunupZeroRunupDrawDown=config.RunupZeroRunupDrawDown
i.RunupZeroProfit=config.RunupZeroProfit
i.RunupZeroProfitDrawDown=config.RunupZeroProfitDrawDown
i.RunupZeroDrawDown=config.RunupZeroDrawDown
i.RunupZeroProfitRunup=config.RunupZeroProfitRunup
i.usage= config.usage i.usage= config.usage
i.detail=config.detail i.detail=config.detail
......
...@@ -23,7 +23,7 @@ async function run(usage) ...@@ -23,7 +23,7 @@ async function run(usage)
{ {
for (let n=1;n<40;n++) for (let n=1;n<40;n++)
{ {
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,maxTradeDays:40,targetPercentage:{enable:false},fft:1,ProfitZeroProfit:(n*-1),fftRunup:2,ProfitZeroProfitRunup:{count:7,percent:15},ProfitZeroDrawDownProfit:(n*-1),ProfitZeroDrawDown:(n*-1),ddPlusRunCount:4,RunupDrawDownZeroRunupDrawDown:(n*-1),ProfitZeroRunupProfit:(n*-1),ProfitZeroRunupDrawDown:(n*-1),RunUpDrawDownZeroProfit:(n*-1),RunUpDrawDownZeroDrawDownProfit:(n*-1),RunUpDrawDownZeroDrawdown:(n*-1),RunUpDrawDownZeroRunupProfit:(n*-1),usage:usage} 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,maxTradeDays:40,targetPercentage:{enable:false},fft:1,ProfitZeroProfit:(n*-1),fftRunup:2,ProfitZeroProfitRunup:{count:7,percent:15},ProfitZeroDrawDownProfit:(n*-1),ProfitZeroDrawDown:(n*-1),ddPlusRunCount:4,RunupDrawDownZeroRunupDrawDown:(n*-1),ProfitZeroRunupProfit:(n*-1),ProfitZeroRunupDrawDown:(n*-1),RunUpDrawDownZeroProfit:(n*-1),RunUpDrawDownZeroDrawDownProfit:(n*-1),RunUpDrawDownZeroDrawdown:(n*-1),RunUpDrawDownZeroRunupProfit:(n*-1),RunupZeroRunupDrawDown:(n*-1),RunupZeroProfit:(n*-1),RunupZeroProfitDrawDown:(n*-1),RunupZeroDrawDown:(n*-1),RunupZeroProfitRunup:(n*-1),usage:usage}
// 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=[] obj.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