Commit baee1bb1 authored by Ahmad Nemati's avatar Ahmad Nemati

git pu

parent 69cb2954
...@@ -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, 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, 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
...@@ -42,6 +42,10 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -42,6 +42,10 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
else if (usage === 'RunUpDrawDownZeroProfit') { else if (usage === 'RunUpDrawDownZeroProfit') {
type = type + ' ' + usage + ' ' + RunUpDrawDownZeroProfit type = type + ' ' + usage + ' ' + RunUpDrawDownZeroProfit
} }
else if (usage === 'RunUpDrawDownZeroDrawDownProfit') {
type = type + ' ' + usage + ' ' + RunUpDrawDownZeroDrawDownProfit
}
let saveData = [] let saveData = []
...@@ -100,6 +104,7 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -100,6 +104,7 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
let allLossProfitRunup = 0 let allLossProfitRunup = 0
let diffDrawdownProfitAll = 0 let diffDrawdownProfitAll = 0
let RunupDrawDownDiffDrawdownProfitAll = 0
let dur let dur
try { try {
...@@ -196,6 +201,12 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -196,6 +201,12 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
else else
runBefore = true runBefore = true
} }
else if (usage === 'RunUpDrawDownZeroDrawDownProfit') {
if (RunupDrawDownDiffDrawdownProfitAll > RunUpDrawDownZeroDrawDownProfit)
runBefore = false
else
runBefore = true
}
} }
...@@ -238,13 +249,14 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max ...@@ -238,13 +249,14 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
drawDownPlusRunUpCount++ drawDownPlusRunUpCount++
drawDownPlusRunUpPercent = drawDownPlusRunUpPercent + (data[i].runUp + data[i].drawDown) drawDownPlusRunUpPercent = drawDownPlusRunUpPercent + (data[i].runUp + data[i].drawDown)
RunUpDrawDownAllLossProfit = RunUpDrawDownAllLossProfit + data[i].profit RunUpDrawDownAllLossProfit = RunUpDrawDownAllLossProfit + data[i].profit
// diffDrawdownProfitAll = diffDrawdownProfitAll + (data[i].drawDown - data[i].profit) RunupDrawDownDiffDrawdownProfitAll = RunupDrawDownDiffDrawdownProfitAll + (data[i].drawDown - data[i].profit)
// ProfitZeroDrawDownPercent = ProfitZeroDrawDownPercent + data[i].drawDown // ProfitZeroDrawDownPercent = ProfitZeroDrawDownPercent + data[i].drawDown
// VarProfitZeroRunupProfit=VarProfitZeroRunupProfit+(data[i].runUp + data[i].profit) // VarProfitZeroRunupProfit=VarProfitZeroRunupProfit+(data[i].runUp + data[i].profit)
} else { } else {
drawDownPlusRunUpCount = 0 drawDownPlusRunUpCount = 0
drawDownPlusRunUpPercent = 0 drawDownPlusRunUpPercent = 0
RunUpDrawDownAllLossProfit=0 RunUpDrawDownAllLossProfit=0
RunupDrawDownDiffDrawdownProfitAll=0
} }
......
...@@ -140,7 +140,7 @@ function initData(data, config, name, risk, pfTrade, side, riskFreeLevel,detail, ...@@ -140,7 +140,7 @@ function initData(data, config, name, risk, pfTrade, side, riskFreeLevel,detail,
let cz = [] let cz = []
for (let i = 0; i < config.length; i++) { for (let i = 0; i < config.length; i++) {
let d = ai.run(arr, config[i], config[i].risk, config[i].pfTrade, config[i].riskFreeLevel,detail,config[i].loss,config[i].dur,config[i].maxTradeDays,config[i].targetPercentage,candles,config[i].fft,config[i].ProfitZeroProfit,config[i].fftRunup,config[i].ProfitZeroProfitRunup,config[i].ProfitZeroDrawDownProfit,config[i].ProfitZeroDrawDown,config[i].ddPlusRunCount,config[i].RunupDrawDownZeroRunupDrawDown,config[i].ProfitZeroRunupProfit,config[i].ProfitZeroRunupDrawDown,config[i].RunUpDrawDownZeroProfit,config[i].usage) let d = ai.run(arr, config[i], config[i].risk, config[i].pfTrade, config[i].riskFreeLevel,detail,config[i].loss,config[i].dur,config[i].maxTradeDays,config[i].targetPercentage,candles,config[i].fft,config[i].ProfitZeroProfit,config[i].fftRunup,config[i].ProfitZeroProfitRunup,config[i].ProfitZeroDrawDownProfit,config[i].ProfitZeroDrawDown,config[i].ddPlusRunCount,config[i].RunupDrawDownZeroRunupDrawDown,config[i].ProfitZeroRunupProfit,config[i].ProfitZeroRunupDrawDown,config[i].RunUpDrawDownZeroProfit,config[i].RunUpDrawDownZeroDrawDownProfit,config[i].usage)
if (d !== null) if (d !== null)
cz.push(d) cz.push(d)
} }
......
...@@ -22,7 +22,7 @@ async function run() ...@@ -22,7 +22,7 @@ async function run()
{ {
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:-2,ProfitZeroRunupProfit:(n*-1),ProfitZeroRunupDrawDown:(n*-1),RunUpDrawDownZeroProfit:(n*-1),usage:'ProfitZeroRunupProfit'} 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:-2,ProfitZeroRunupProfit:(n*-1),ProfitZeroRunupDrawDown:(n*-1),RunUpDrawDownZeroProfit:(n*-1),RunUpDrawDownZeroDrawDownProfit:(n*-1),usage:'ProfitZeroRunupProfit'}
// 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