수조ㅓㅇ
This commit is contained in:
@@ -402,16 +402,29 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
var 현재봉72 = candleData.movingAverageDataList[72].Value;
|
||||
|
||||
|
||||
var 전봉Bol4 = candleData_전봉.movingAverageDataList[4].BolangerValue;
|
||||
var 전봉Bol12 = candleData_전봉.movingAverageDataList[12].BolangerValue;
|
||||
var 전봉Bol24 = candleData_전봉.movingAverageDataList[24].BolangerValue;
|
||||
var 전봉Bol4_Down = candleData_전봉.movingAverageDataList[4].BolangerValue_Down;
|
||||
var 전봉Bol12_Down = candleData_전봉.movingAverageDataList[12].BolangerValue_Down;
|
||||
var 전봉Bol24_Down = candleData_전봉.movingAverageDataList[24].BolangerValue_Down;
|
||||
|
||||
var 전전봉Bol4 = candleData_전전봉.movingAverageDataList[4].BolangerValue;
|
||||
var 전전봉Bol12 = candleData_전전봉.movingAverageDataList[12].BolangerValue;
|
||||
var 전전봉Bol24 = candleData_전전봉.movingAverageDataList[24].BolangerValue;
|
||||
var Bol4 = candleData.movingAverageDataList[4].BolangerValue;
|
||||
var Bol12 = candleData.movingAverageDataList[12].BolangerValue;
|
||||
var Bol24 = candleData.movingAverageDataList[24].BolangerValue;
|
||||
var 전전봉Bol4_Down = candleData_전전봉.movingAverageDataList[4].BolangerValue_Down;
|
||||
var 전전봉Bol12_Down = candleData_전전봉.movingAverageDataList[12].BolangerValue_Down;
|
||||
var 전전봉Bol24_Down = candleData_전전봉.movingAverageDataList[24].BolangerValue_Down;
|
||||
|
||||
var Bol4_Down = candleData.movingAverageDataList[4].BolangerValue_Down;
|
||||
var Bol12_Down = candleData.movingAverageDataList[12].BolangerValue_Down;
|
||||
var Bol24_Down = candleData.movingAverageDataList[24].BolangerValue_Down;
|
||||
|
||||
var 전봉Bol4_Up = candleData_전봉.movingAverageDataList[4].BolangerValue_Up;
|
||||
var 전봉Bol12_Up = candleData_전봉.movingAverageDataList[12].BolangerValue_Up;
|
||||
var 전봉Bol24_Up = candleData_전봉.movingAverageDataList[24].BolangerValue_Up;
|
||||
|
||||
var 전전봉Bol4_Up = candleData_전전봉.movingAverageDataList[4].BolangerValue_Up;
|
||||
var 전전봉Bol12_Up = candleData_전전봉.movingAverageDataList[12].BolangerValue_Up;
|
||||
var 전전봉Bol24_Up = candleData_전전봉.movingAverageDataList[24].BolangerValue_Up;
|
||||
|
||||
var Bol4_Up = candleData.movingAverageDataList[4].BolangerValue_Up;
|
||||
var Bol12_Up = candleData.movingAverageDataList[12].BolangerValue_Up;
|
||||
var Bol24_Up = candleData.movingAverageDataList[24].BolangerValue_Up;
|
||||
|
||||
if ((int)interval != 1)
|
||||
{
|
||||
@@ -435,33 +448,34 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
{
|
||||
var buyFlag = false;
|
||||
var buyType = 0;
|
||||
if(BuyLongStep.ContainsKey(market + interval) && BuyLongStep[market + interval])
|
||||
{
|
||||
if (현재봉72 > 현재봉24 && 현재봉24 > 현재봉12 && 현재봉12 > 현재봉2)
|
||||
if (BuyLongStep.ContainsKey(market + interval) && BuyLongStep[market + interval])
|
||||
{
|
||||
if (현재봉72 < 현재봉24 && 현재봉24 < 현재봉12 && 현재봉12 < 현재봉2 && candleData.IchimokData.상한선 < 현재봉2)
|
||||
{
|
||||
if (Bol12 > Bol24 && 전봉Bol12 > 전봉Bol24 &&
|
||||
전봉Bol12 > Bol12 && 전봉Bol24 > Bol24 &&
|
||||
전봉Bol12 - 전봉Bol24 > Bol12 - Bol24)
|
||||
if (Bol12_Up < Bol24_Up && 전봉Bol12_Up < 전봉Bol24_Up &&
|
||||
전봉Bol12_Up < Bol12_Up && 전봉Bol24_Up < Bol24_Up)
|
||||
{
|
||||
buyType = 2;
|
||||
buyFlag = true;
|
||||
}
|
||||
}
|
||||
else if (현재봉2 < 현재봉24)
|
||||
BuyLongStep[market + interval] = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (
|
||||
candleData.IchimokData.하한선 > 현재봉2 && candleData_전봉.IchimokData.하한선 > 전봉2 &&
|
||||
현재봉72 > 현재봉2 && 전봉72 > 전봉2 && 전봉24 > 전봉2 && 현재봉24 < 현재봉2 &&
|
||||
전봉12 < 전봉2 && 현재봉12 < 현재봉24
|
||||
candleData_전봉.IchimokData.하한선 > 전봉2 && candleData_전전봉.IchimokData.하한선 > 전전봉2 &&
|
||||
전봉72 > 전봉2 && 전전봉72 > 전전봉2 && 전전봉24 > 전전봉2 && 전봉24 < 전봉2 &&
|
||||
전전봉12 < 전전봉2 && 전봉12 < 전봉24
|
||||
)
|
||||
{
|
||||
buyFlag = true; ;
|
||||
buyType = 1;
|
||||
//buyFlag = true;
|
||||
//buyType = 1;
|
||||
}
|
||||
else if (
|
||||
candleData.IchimokData.상한선 < 현재봉2 && candleData_전봉.IchimokData.상한선 < 전봉2 &&
|
||||
현재봉72 < 현재봉2 && 전봉72 < 전봉2 && 전봉12 > 전봉2 && 현재봉12 < 현재봉2
|
||||
candleData_전봉.IchimokData.상한선 < 전봉2 && candleData_전전봉.IchimokData.상한선 < 전전봉2 &&
|
||||
전봉72 < 전봉2 && 전전봉72 < 전전봉2 && 전전봉12 > 전전봉2 && 전봉12 < 전봉2
|
||||
)
|
||||
{
|
||||
BuyShortStep[market + interval] = true;
|
||||
@@ -595,7 +609,7 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (Bol12 > 전봉Bol12 && Bol24 > 전봉Bol24)
|
||||
if (Bol12_Up < 전봉Bol12_Up && Bol24_Up < 전봉Bol24_Up)
|
||||
{
|
||||
sellFlag = true;
|
||||
}
|
||||
@@ -697,31 +711,32 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
if (BuyShortStep.ContainsKey(market + interval) && BuyShortStep[market + interval])
|
||||
{
|
||||
//72 > 24 > 12 > 2
|
||||
if (현재봉72 > 현재봉24 && 현재봉24 > 현재봉12 && 현재봉12 > 현재봉2)
|
||||
if (현재봉72 > 현재봉24 && 현재봉24 > 현재봉12 && 현재봉12 > 현재봉2 && candleData.IchimokData.하한선 > 현재봉2)
|
||||
{
|
||||
if (Bol12 > Bol24 && 전봉Bol12 > 전봉Bol24 &&
|
||||
전봉Bol12 > Bol12 && 전봉Bol24 > Bol24 &&
|
||||
전봉Bol12 - 전봉Bol24 > Bol12 - Bol24)
|
||||
if (Bol12_Down > Bol24_Down && 전봉Bol12_Down > 전봉Bol24_Down &&
|
||||
전봉Bol12_Down > Bol12_Down && 전봉Bol24_Down > Bol24_Down)
|
||||
{
|
||||
buyType = 2;
|
||||
buyFlag = true;
|
||||
}
|
||||
}
|
||||
else if (현재봉2 > 현재봉24)
|
||||
BuyShortStep[market + interval] = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (
|
||||
candleData.IchimokData.상한선 < 현재봉2 && candleData_전봉.IchimokData.상한선 < 전봉2 &&
|
||||
현재봉72 < 현재봉2 && 전봉72 < 전봉2 && 전봉24 < 전봉2 && 현재봉24 > 현재봉2 &&
|
||||
전봉12 > 전봉2 && 현재봉12 > 현재봉24
|
||||
candleData_전봉.IchimokData.상한선 < 전봉2 && candleData_전전봉.IchimokData.상한선 < 전전봉2 &&
|
||||
전봉72 < 전봉2 && 전전봉72 < 전전봉2 && 전전봉24 < 전전봉2 && 전봉24 > 전봉2 &&
|
||||
전전봉12 > 전전봉2 && 전봉12 > 전봉24
|
||||
)
|
||||
{
|
||||
buyFlag = true;
|
||||
buyType = 1;
|
||||
//buyFlag = true;
|
||||
//buyType = 1;
|
||||
}
|
||||
else if (
|
||||
candleData.IchimokData.하한선 > 현재봉2 && candleData_전봉.IchimokData.하한선 > 전봉2 &&
|
||||
현재봉72 > 현재봉2 && 전봉72 > 전봉2 && 전봉12 < 전봉2 && 현재봉12 > 현재봉2
|
||||
candleData_전봉.IchimokData.하한선 > 전봉2 && candleData_전전봉.IchimokData.하한선 > 전전봉2 &&
|
||||
전봉72 > 전봉2 && 전전봉72 > 전전봉2 && 전전봉12 < 전전봉2 && 전봉12 > 전봉2
|
||||
)
|
||||
{
|
||||
BuyShortStep[market + interval] = true;
|
||||
@@ -859,7 +874,7 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
sellFlag = true;
|
||||
break;
|
||||
case 2:
|
||||
if(Bol12 > 전봉Bol12 && Bol24 > 전봉Bol24)
|
||||
if(Bol12_Down > 전봉Bol12_Down && Bol24_Down > 전봉Bol24_Down)
|
||||
{
|
||||
sellFlag = true;
|
||||
}
|
||||
|
||||
@@ -65,6 +65,7 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
candleData.movingAverageDataList[item.Key] = new MovingAverageData();
|
||||
candleData.movingAverageDataList[item.Key].Value = datas.Sum(i => i.Close) / item.Key;
|
||||
CalBolangerValue(datas, candleData.movingAverageDataList[item.Key], datas.Count - 1, item.Key);
|
||||
CalBolangerValue(datas, candleData.movingAverageDataList[item.Key], datas.Count - 1, item.Key);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -104,13 +105,13 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
//하향선
|
||||
if (mvData.BolangerType == 0)
|
||||
{
|
||||
mvData.BolangerValue = average - mvData.BolangerSquared * Math.Sqrt(t_Close / period);
|
||||
mvData.BolangerValue_Down = average - mvData.BolangerSquared * Math.Sqrt(t_Close / period);
|
||||
}
|
||||
//상향선
|
||||
else if (mvData.BolangerType == 1)
|
||||
{
|
||||
|
||||
mvData.BolangerValue = average + mvData.BolangerSquared * Math.Sqrt(t_Close / period);
|
||||
mvData.BolangerValue_Up = average + mvData.BolangerSquared * Math.Sqrt(t_Close / period);
|
||||
}
|
||||
//기준선
|
||||
else if (mvData.BolangerType == 2)
|
||||
|
||||
@@ -12,7 +12,9 @@ namespace BitgetAPI.Data.IndicatorData
|
||||
// MV Value
|
||||
public double Value { get; set; }
|
||||
// Bol Value
|
||||
public double BolangerValue_Down { get; set; }
|
||||
public double BolangerValue { get; set; }
|
||||
public double BolangerValue_Up { get; set; }
|
||||
// Bol Type 0 하향 1 상향 2기준
|
||||
public int BolangerType { get; set; } = 0;
|
||||
// Bol 편차
|
||||
|
||||
Reference in New Issue
Block a user