Commit 69cb2954 authored by Ahmad Nemati's avatar Ahmad Nemati

git pu

parent e39ae4fc
......@@ -14,7 +14,7 @@ let avgDrawdown = 0
let avgProfit = 0
function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, maxTradeDays, targetPercentage, candlesData, fft, ProfitZeroProfit, fftRunup, ProfitZeroProfitRunup, ProfitZeroDrawDownProfit, ProfitZeroDrawDown, ddPlusRunCount, ddPlusRunPercent,ProfitZeroRunupProfit,ProfitZeroRunupDrawDown, 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, usage) {
let type = config.type + ' param:' + config.param + ' base:' + config.base + ' target:' + config.target + ' targetPercentage:' + targetPercentage.enable
if (usage === 'fft') {
type = type + ' ' + usage + ' ' + fft
......@@ -30,8 +30,8 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
type = type + ' ' + usage + ' ' + ProfitZeroDrawDown
} else if (usage === 'ddPlusRunCount') {
type = type + ' ' + usage + ' ' + ddPlusRunCount
} else if (usage === 'ddPlusRunPercent') {
type = type + ' ' + usage + ' ' + ddPlusRunPercent
} else if (usage === 'RunupDrawDownZeroRunupDrawDown') {
type = type + ' ' + usage + ' ' + RunupDrawDownZeroRunupDrawDown
}
else if (usage === 'ProfitZeroRunupProfit') {
type = type + ' ' + usage + ' ' + ProfitZeroRunupProfit
......@@ -39,6 +39,9 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
else if (usage === 'ProfitZeroRunupDrawDown') {
type = type + ' ' + usage + ' ' + ProfitZeroRunupDrawDown
}
else if (usage === 'RunUpDrawDownZeroProfit') {
type = type + ' ' + usage + ' ' + RunUpDrawDownZeroProfit
}
let saveData = []
......@@ -86,6 +89,7 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
let canCreateRunupPercent = false
let countDrop = 0
let allLossProfit = 0
let RunUpDrawDownAllLossProfit = 0
let drawDownPlusRunUpCount = 0
let drawDownPlusRunUpPercent = 0
let VarProfitZeroRunupProfit=0
......@@ -145,8 +149,8 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
runBefore = false
else
runBefore = true
} else if (usage === 'ddPlusRunPercent') {
if (drawDownPlusRunUpPercent > ddPlusRunPercent)
} else if (usage === 'RunupDrawDownZeroRunupDrawDown') {
if (drawDownPlusRunUpPercent > RunupDrawDownZeroRunupDrawDown)
runBefore = false
else
runBefore = true
......@@ -186,18 +190,19 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
runBefore = true
}
else if (usage === 'RunUpDrawDownZeroProfit') {
if (RunUpDrawDownAllLossProfit > RunUpDrawDownZeroProfit)
runBefore = false
else
runBefore = true
}
if ((data[i].runUp + data[i].drawDown) < 0) {
drawDownPlusRunUpCount++
drawDownPlusRunUpPercent = drawDownPlusRunUpPercent + (data[i].runUp + data[i].drawDown)
} else {
drawDownPlusRunUpCount = 0
drawDownPlusRunUpPercent = 0
}
if ((data[i].profit + data[i].runUp) < 0) {
......@@ -229,6 +234,19 @@ function run(data, config, risk, pfTrade, riskFreeLevel, detail, loss, durs, max
//zero
}
if ((data[i].runUp + data[i].drawDown) < 0) {
drawDownPlusRunUpCount++
drawDownPlusRunUpPercent = drawDownPlusRunUpPercent + (data[i].runUp + data[i].drawDown)
RunUpDrawDownAllLossProfit = RunUpDrawDownAllLossProfit + data[i].profit
// diffDrawdownProfitAll = diffDrawdownProfitAll + (data[i].drawDown - data[i].profit)
// ProfitZeroDrawDownPercent = ProfitZeroDrawDownPercent + data[i].drawDown
// VarProfitZeroRunupProfit=VarProfitZeroRunupProfit+(data[i].runUp + data[i].profit)
} else {
drawDownPlusRunUpCount = 0
drawDownPlusRunUpPercent = 0
RunUpDrawDownAllLossProfit=0
}
if (data[i].profit < 0) {
allLossProfit = allLossProfit + data[i].profit
......
......@@ -65,10 +65,11 @@ async function run() {
i.ProfitZeroDrawDownProfit=config.ProfitZeroDrawDownProfit
i.ProfitZeroDrawDown=config.ProfitZeroDrawDown
i.ddPlusRunCount=config.ddPlusRunCount
i.ddPlusRunPercent=config.ddPlusRunPercent
i.RunupDrawDownZeroRunupDrawDown=config.RunupDrawDownZeroRunupDrawDown
i.ProfitZeroRunupProfit=config.ProfitZeroRunupProfit
i.ProfitZeroRunupDrawDown=config.ProfitZeroRunupDrawDown
i.RunUpDrawDownZeroProfit=config.RunUpDrawDownZeroProfit
i.usage= config.usage
i.detail=config.detail
......
......@@ -140,7 +140,7 @@ function initData(data, config, name, risk, pfTrade, side, riskFreeLevel,detail,
let cz = []
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].ddPlusRunPercent,config[i].ProfitZeroRunupProfit,config[i].ProfitZeroRunupDrawDown,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].usage)
if (d !== null)
cz.push(d)
}
......
......@@ -22,7 +22,7 @@ async function run()
{
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,ddPlusRunPercent:-2,ProfitZeroRunupProfit:(n*-1),ProfitZeroRunupDrawDown:(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),usage:'ProfitZeroRunupProfit'}
// let detail=['configs2.json-211021092159_O1_BNC_BTCUSD_Lp1_Y211020a - Copy_Mn.csv&zarib param:1.1 base:200 target:1']
obj.detail=[]
// 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