에러 수정 및 로그 시스템 도입
This commit is contained in:
@@ -36,6 +36,8 @@ namespace Million_Buyer
|
||||
|
||||
bool SetIndicator = false;
|
||||
bool ThreadFlag = false;
|
||||
bool AliveCheckor = false;
|
||||
|
||||
private Thread thread = null;
|
||||
private Thread orderThread = null;
|
||||
private List<Account> accounts = null;
|
||||
@@ -188,8 +190,8 @@ namespace Million_Buyer
|
||||
private void bt_Stop_Click(object sender, EventArgs e)
|
||||
{
|
||||
ThreadFlag = false;
|
||||
if (!RealTimeMode && thread != null) thread.Abort();
|
||||
if (!RealTimeMode && orderThread != null) orderThread.Abort();
|
||||
//if (!RealTimeMode && thread != null) thread.Abort();
|
||||
//if (!RealTimeMode && orderThread != null) orderThread.Abort();
|
||||
|
||||
bt_Start.Enabled = true;
|
||||
rd_buyer.Enabled = true;
|
||||
@@ -284,9 +286,9 @@ namespace Million_Buyer
|
||||
var buyRex = _saveResultData.BuyRegularExpression;
|
||||
var sellRex = _saveResultData.SellRegularExpression;
|
||||
|
||||
var buyScript = new InteratorScripter();
|
||||
var buyScript = new InteratorScripter("Buy Script");
|
||||
buyScript.regularExpressionString = buyRex;
|
||||
var sellScript = new InteratorScripter();
|
||||
var sellScript = new InteratorScripter("Sell Script");
|
||||
sellScript.regularExpressionString = sellRex;
|
||||
|
||||
var scriptDic = new Dictionary<string, bool>();
|
||||
@@ -294,11 +296,7 @@ namespace Million_Buyer
|
||||
//TODO 모든 조건 데이터 미리 계산 필요
|
||||
|
||||
//save 데이터
|
||||
_saveResultData.StartDateTime = DateTime.Now;
|
||||
|
||||
//구매 데이터
|
||||
|
||||
var saveFlag = true;
|
||||
_saveResultData.StartDateTime = DateTime.Now;
|
||||
|
||||
//구매 후 데이터 여러개 계속 겹치는 경우 제외하기 위한 List
|
||||
var overlapBuyManagementList = new Dictionary<string, bool>();
|
||||
@@ -327,6 +325,13 @@ namespace Million_Buyer
|
||||
{
|
||||
try
|
||||
{
|
||||
if (AliveCheckor)
|
||||
{
|
||||
AliveCheckor = false;
|
||||
InsertLog("Alive");
|
||||
}
|
||||
|
||||
|
||||
#region 기본 데이터 Setting
|
||||
if (firstFlag == 0)
|
||||
{
|
||||
@@ -352,15 +357,23 @@ namespace Million_Buyer
|
||||
dic[codeFullname] = true;
|
||||
}
|
||||
CommonProperty.subIndicatorStateManagement[item.IndexString] = dic;
|
||||
}
|
||||
#region TODO 이미 구매되어 있는 종목에 대한 기본 데이터 Setting 필요
|
||||
if (RealTimeMode)
|
||||
{
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
// TODO 이미 구매되어 있는 종목에 대한 기본 데이터 Setting 필요
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
firstFlag = 1;
|
||||
InsertLog("Deafult Data Setting 완료..");
|
||||
sw.Stop();
|
||||
InsertLog("Default 계산 시간 : " + sw.Elapsed.ToString());
|
||||
LogManager.WriteLog("Default 계산 시간 : " + sw.Elapsed.ToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -373,14 +386,7 @@ namespace Million_Buyer
|
||||
InsertLog("Ticker 계산 시간 : " + sw.Elapsed.ToString());
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
//Ticker 초기화
|
||||
if (DateTime.Now.Minute == 0 && saveFlag)
|
||||
{
|
||||
saveFlag = false;
|
||||
}
|
||||
else if (DateTime.Now.Minute > 1) saveFlag = true;
|
||||
#endregion
|
||||
|
||||
foreach (var item in realTimeMsg.coinFullNameList)
|
||||
{
|
||||
@@ -468,6 +474,10 @@ namespace Million_Buyer
|
||||
}
|
||||
|
||||
buyList.Add(buyData);
|
||||
|
||||
string str = "Buy : " + item + ",\r\n Buy Candle Data : " + JsonConvert.SerializeObject(recentlyData) + "\r\n";
|
||||
LogManager.WriteLog(str, item);
|
||||
|
||||
overlapBuyManagementList[item] = false;
|
||||
InsertLog(buyData.ConGoodsData.CoinFullName + " Market Data 구입 DateTime : " + time.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
//grid 처리 구매항목, 구매 가격, 구매 개수, 구매시점
|
||||
@@ -531,10 +541,9 @@ namespace Million_Buyer
|
||||
result.WinCount = rate > 0 ? 1 : 0;
|
||||
result.LoseCount = rate < 0 ? 1 : 0;
|
||||
result.FirstWinFlag = rate > 0 ? true : false;
|
||||
|
||||
|
||||
result.BuyCount = buyItem.CandleDataLists_Im[0].BuyCount;
|
||||
result.SellCount = buyItem.CandleDataLists_Im[0].BuyCount;
|
||||
result.SellCount = sellItem.BuyCount;
|
||||
|
||||
// buycount 에서 sell count를 제외한 양이 미체결 량
|
||||
if (!RealTimeMode)
|
||||
@@ -545,6 +554,10 @@ namespace Million_Buyer
|
||||
}
|
||||
|
||||
resultDataList.Add(result);
|
||||
|
||||
string str = "Sell : " + item + ",\r\n Sell Candle Data : " + JsonConvert.SerializeObject(recentlyData) + "\r\n";
|
||||
LogManager.WriteLog(str, item);
|
||||
|
||||
//처리한 buyList는 삭제
|
||||
buyList.Remove(buyItem);
|
||||
InsertLog(buyItem.ConGoodsData.CoinFullName + " Market Data 판매 DateTime : " + time.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
@@ -743,6 +756,8 @@ namespace Million_Buyer
|
||||
InsertLog("Order List Thread Alive.");
|
||||
else
|
||||
InsertLog("Order List Thread Death.");
|
||||
|
||||
AliveCheckor = true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user