buyer에 hunter처럼 예외처리 코드 추가

This commit is contained in:
kyh
2024-03-18 11:00:53 +09:00
parent 3424cba6a8
commit aaa3d47a2b
2 changed files with 62 additions and 52 deletions

View File

@@ -760,13 +760,17 @@ namespace Million_Buyer
{
var flag = false;
var scriptStr = sellScript.regularExpressionString;
var str = "default";
if (sellExceptionScript.regularExpressionString != null &&
sellExceptionScript.regularExpressionString.Length > 0)
{
//예외처리 로직 추가
flag = sellExceptionScript.DicExcuteScript(recentlyData.CalculateFlag);
if (flag) scriptStr = sellExceptionScript.regularExpressionString;
if (flag)
{
str = "exception";
scriptStr = sellExceptionScript.regularExpressionString;
}
}
if (!flag)
@@ -774,32 +778,34 @@ namespace Million_Buyer
var buyItem = buyList.FirstOrDefault(x => x.ConGoodsData.CoinFullName == item);
var buyCandleData = buyItem.CandleDataLists_Im[0];
// 사고 나서 1H는 1시간 안팔기 (제일 적은거로)
if ((int)smallCandleType < 60)
if (str != "exception")
{
if (buyCandleData.BuyTime.AddMinutes((int)smallCandleType) > recentlyData.DateTime)
if ((int)smallCandleType < 60)
{
continue;
if (buyCandleData.BuyTime.AddMinutes((int)smallCandleType) > recentlyData.DateTime)
{
continue;
}
}
}
if ((int)smallCandleType < 1440)
{
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
else if ((int)smallCandleType < 1440)
{
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
if (buyCandleData.BuyTime.AddHours((int)smallCandleType / 60) > recentlyData.DateTime)
{
continue;
if (buyCandleData.BuyTime.AddHours((int)smallCandleType / 60) > recentlyData.DateTime)
{
continue;
}
}
}
if ((int)smallCandleType < 10000)
{
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
date = date.AddHours(date.Hour * -1);
if (buyCandleData.BuyTime.AddDays((int)smallCandleType / 1440) > recentlyData.DateTime)
else if ((int)smallCandleType < 10000)
{
continue;
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
date = date.AddHours(date.Hour * -1);
if (buyCandleData.BuyTime.AddDays((int)smallCandleType / 1440) > recentlyData.DateTime)
{
continue;
}
}
}
@@ -836,7 +842,7 @@ namespace Million_Buyer
var sellVal = sellItem.SellValue;
if (allSell)
if (allSell || str == "exception")
{
// 현재가 던지기
sellItem.SellValue = OrderbookManager.GetAskPrice(sellItem.EndValue, false);
@@ -867,8 +873,8 @@ namespace Million_Buyer
resultDataList.Add(result);
string str = "Sell : " + item + ",\r\n Sell Candle Data : " + JsonConvert.SerializeObject(recentlyData) + "\r\n";
LogManager.WriteLog(str, item);
string logData = "Sell : " + item + ",\r\n Sell Candle Data : " + JsonConvert.SerializeObject(recentlyData) + "\r\n";
LogManager.WriteLog(logData, item);
//초기화 작업
foreach (var sublIndi in subIndicator)

View File

@@ -754,13 +754,16 @@ namespace Million
{
var flag = false;
var scriptStr = sellScript.regularExpressionString;
var str = "default";
if (sellExceptionScript.regularExpressionString != null &&
sellExceptionScript.regularExpressionString.Length > 0)
{
//예외처리 로직 추가
flag = sellExceptionScript.DicExcuteScript(recentlyData.CalculateFlag);
if (flag) scriptStr = sellExceptionScript.regularExpressionString;
if (flag) {
str = "exception";
scriptStr = sellExceptionScript.regularExpressionString;
}
}
if (!flag)
@@ -774,35 +777,36 @@ namespace Million
{
var buyItem = buyList.FirstOrDefault(x => x.ConGoodsData.CoinFullName == item);
var buyCandleData = buyItem.CandleDataLists_Im[0];
if ((int)smallCandleType < 60)
if (str != "exception")
{
if (buyCandleData.BuyTime.AddMinutes((int)smallCandleType) > recentlyData.DateTime)
if ((int)smallCandleType < 60)
{
continue;
if (buyCandleData.BuyTime.AddMinutes((int)smallCandleType) > recentlyData.DateTime)
{
continue;
}
}
else if ((int)smallCandleType < 1440)
{
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
if (buyCandleData.BuyTime.AddHours((int)smallCandleType / 60) > recentlyData.DateTime)
{
continue;
}
}
else if ((int)smallCandleType < 10000)
{
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
date = date.AddHours(date.Hour * -1);
if (buyCandleData.BuyTime.AddDays((int)smallCandleType / 1440) > recentlyData.DateTime)
{
continue;
}
}
}
else if ((int)smallCandleType < 1440)
{
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
if (buyCandleData.BuyTime.AddHours((int)smallCandleType / 60) > recentlyData.DateTime)
{
continue;
}
}
else if ((int)smallCandleType < 10000)
{
var date = buyCandleData.BuyTime;
date = date.AddMinutes(date.Minute * -1);
date = date.AddHours(date.Hour * -1);
if (buyCandleData.BuyTime.AddDays((int)smallCandleType / 1440) > recentlyData.DateTime)
{
continue;
}
}
var sellItem = recentlyData;
var valDic = ResultLogicManager.GetIndicateValue(sellItem.CalculateFlag, totalIndicator, sellItem);