From 881250a0e72ae315b5cd641787944cd527698646 Mon Sep 17 00:00:00 2001 From: kyh <1329522@naver.com> Date: Mon, 17 Feb 2025 14:30:49 +0900 Subject: [PATCH] =?UTF-8?q?=EC=B5=9C=EC=B4=88=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../IndicatorProcess.cs | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/BitgetApi/IndicatorConditionSetup/IndicatorProcess.cs b/BitgetApi/IndicatorConditionSetup/IndicatorProcess.cs index 4cf96f7..28f4865 100644 --- a/BitgetApi/IndicatorConditionSetup/IndicatorProcess.cs +++ b/BitgetApi/IndicatorConditionSetup/IndicatorProcess.cs @@ -76,7 +76,7 @@ namespace BitgetAPI.IndicatorConditionSetup // 스레드 시작/종료 플래그 public bool Is_th_SignalInfo; public Dictionary> 전저고점 = new Dictionary>(); - + public Dictionary FirstFlag = new Dictionary(); public List checkedMarkets; public List intervalList; @@ -240,7 +240,7 @@ namespace BitgetAPI.IndicatorConditionSetup { var dic = new Dictionary(); dic.Add("전고가", 0); - dic.Add("전저가", 0); + dic.Add("전저가", 0); dic.Add("전전고가", 0); dic.Add("전전저가", 0); dic.Add("전전전저가", 0); @@ -290,7 +290,7 @@ namespace BitgetAPI.IndicatorConditionSetup BuyLongStep[market + strInterval] = false; } - if (!(전저고점.ContainsKey(market + "1m") && 전저고점.ContainsKey(market + "5m") && 전저고점.ContainsKey(market + "30m"))) + if (!(전저고점.ContainsKey(market + "1m") && 전저고점.ContainsKey(market + "15m") && 전저고점.ContainsKey(market + "30m"))) continue; #region 1분봉 처리 @@ -649,8 +649,7 @@ namespace BitgetAPI.IndicatorConditionSetup }; - var 저고점_1 = 전저고점[market + "1m"]; - var 저고점_5 = 전저고점[market + "5m"]; + var 저고점_1 = 전저고점[market + "1m"]; var 저고점_15 = 전저고점[market + "15m"]; var 저고점_30 = 전저고점[market + "30m"]; @@ -681,6 +680,7 @@ namespace BitgetAPI.IndicatorConditionSetup if (!UpBuyList.ContainsKey(market)) { + var buyFlag = false; var flag_1 = 현재봉3 > oneList.Max(); @@ -699,8 +699,10 @@ namespace BitgetAPI.IndicatorConditionSetup { buyFlag = true; } + if (FirstFlag.ContainsKey(market + "Up")) + FirstFlag[market + "Up"] = false; - if (buyFlag) + if (buyFlag && FirstFlag[market + "Up"]) { // 없으면 생성 if (signalData == null) @@ -726,7 +728,7 @@ namespace BitgetAPI.IndicatorConditionSetup { "Flag", 저고점_30["전고가"] > 저고점_30["전전고가"]}, { "MCandleTimeType", (int)interval }, { "CandleTime", candleData.Argument }, - { "Candle", candleData } + { "Candle", candleData } }; UpBuyList.Add(market, buyDic); @@ -763,8 +765,9 @@ namespace BitgetAPI.IndicatorConditionSetup } } } + else + FirstFlag[market + "Up"] = true; } - //파는 시점 else { @@ -922,8 +925,9 @@ namespace BitgetAPI.IndicatorConditionSetup { buyFlag = true; } - - if (buyFlag) + if (FirstFlag.ContainsKey(market + "Down")) + FirstFlag[market + "Down"] = false; + if (buyFlag && FirstFlag[market + "Down"]) { // 없으면 생성 if (signalData == null) @@ -985,7 +989,8 @@ namespace BitgetAPI.IndicatorConditionSetup } } } - + else + FirstFlag[market + "Down"] = true; } //파는 시점