Commit 6f4fd718 authored by Ahmad Nemati's avatar Ahmad Nemati

init

parent 36e9c978
...@@ -6,7 +6,7 @@ let zarib = 'zarib' ...@@ -6,7 +6,7 @@ let zarib = 'zarib'
let base = 'base' let base = 'base'
function run(data, config, risk, pfTrade, riskFreeLevel,detail) { function run(data, config, risk, pfTrade, riskFreeLevel,detail,loss) {
let type=config.type + ' param:' + config.param + ' base:' + config.base + ' target:' + config.target let type=config.type + ' param:' + config.param + ' base:' + config.base + ' target:' + config.target
let saveData=[] let saveData=[]
let needPrintData=shouldPrint(detail,data[0].signal+'&'+type) let needPrintData=shouldPrint(detail,data[0].signal+'&'+type)
...@@ -102,7 +102,7 @@ let obj ...@@ -102,7 +102,7 @@ let obj
} }
if (d.meta <0 && Math.abs(d.meta) > 100) if (loss !==0 && d.meta <0 && Math.abs(d.meta) > loss)
{ {
allLoss=allLoss+d.meta allLoss=allLoss+d.meta
levels.push(step) levels.push(step)
......
...@@ -6,7 +6,7 @@ let moment = require('moment-timezone') ...@@ -6,7 +6,7 @@ let moment = require('moment-timezone')
let ai = require('./ai') let ai = require('./ai')
async function parse(directory, name, configs, risk, pfTrade, side, riskFreeLevel,detail,onlyShortLong) { async function parse(directory, name, configs, risk, pfTrade, side, riskFreeLevel,detail,onlyShortLong,loss) {
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
let arr = [] let arr = []
...@@ -15,12 +15,12 @@ async function parse(directory, name, configs, risk, pfTrade, side, riskFreeLeve ...@@ -15,12 +15,12 @@ async function parse(directory, name, configs, risk, pfTrade, side, riskFreeLeve
.pipe(csv.parse({headers: true})) .pipe(csv.parse({headers: true}))
.on('error', error => reject(error)) .on('error', error => reject(error))
.on('data', row => arr.push(row)) .on('data', row => arr.push(row))
.on('end', rowCount => resolve(initData(arr, configs, name, risk, pfTrade, side, riskFreeLevel,detail,onlyShortLong))); .on('end', rowCount => resolve(initData(arr, configs, name, risk, pfTrade, side, riskFreeLevel,detail,onlyShortLong,loss)));
}); });
} }
function initData(data, config, name, risk, pfTrade, side, riskFreeLevel,detail,onlyShortLong) { function initData(data, config, name, risk, pfTrade, side, riskFreeLevel,detail,onlyShortLong,loss) {
data = JSON.stringify(data) data = JSON.stringify(data)
...@@ -138,7 +138,7 @@ function initData(data, config, name, risk, pfTrade, side, riskFreeLevel,detail, ...@@ -138,7 +138,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], risk, pfTrade, riskFreeLevel,detail) let d = ai.run(arr, config[i], risk, pfTrade, riskFreeLevel,detail,loss)
if (d !== null) if (d !== null)
cz.push(d) cz.push(d)
} }
......
...@@ -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} let obj={sort:'profitPerMonthDrawDown',alocatedReserve:3,alocatedReserveCompound:3,risk:1,start:2000,pfTrade:2,side:'both',riskFreeLevel:100,onlyShortLong:false,loss:0}
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=[]
......
...@@ -25,7 +25,7 @@ async function run() { ...@@ -25,7 +25,7 @@ async function run() {
for (let i = 0; i < files.length; i++) for (let i = 0; i < files.length; i++)
if (files[i].includes('.csv')) { if (files[i].includes('.csv')) {
csvFile = files[i] csvFile = files[i]
arr.push(csv.parse(directory, files[i], configs.data, configs.risk, configs.pfTrade,configs.side,configs.riskFreeLevel,JSON.parse(checks),configs.onlyShortLong)) arr.push(csv.parse(directory, files[i], configs.data, configs.risk, configs.pfTrade,configs.side,configs.riskFreeLevel,JSON.parse(checks),configs.onlyShortLong),configs.loss)
} }
arr = await Promise.all(arr) arr = await Promise.all(arr)
......
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