API(C#)를 이용한 자동매매 개발 #5

in kr •  7 years ago  (edited)

지난시간에 주문화면, 호가창을 만들기로 했는데
궁극적인 목표는 자동매매이므로 로직을 먼저 입혀놓고 돌린후에 주문화면, 호가창알 만들어도 될것같다.

로직이랄것도 별거 없다. 5분만에 생각했으니 뭐 할말 다 했다...
빗썸에서 거래되는 6개 종목 중

  1. 60분봉 최근 5봉 중 현재 등락이 가장 큰 것
  2. 현재 등락이 0.5% 이상
  3. 최근 5봉 중 -1% 봉이 존재하면 제외

1~3번을 만족하는 종목이 4개 이상일 때,
현재봉 등락률이 제일 큰 종목을 매수!!

인데, 아직 주문은 안하고, 개인적으로 로그만 확인해볼 요량이다.
과거 차트 흐름들을 쭉 보니, 2~3일에 한번?정도 발생이 예상된다.

미리 로직먼저 해놓길 잘 한것 같다.
적용하고 로그만 보면 되니, 이제 호가주문창을 만들어보자.

혹 궁금해 하는 사람을 위해 아래는 소스를 남겨둡니다.

private string IsGlobalBuySignal()
        {
            // 6종목 중 4개 이상이 상승
            // 60봉의 최근5개봉보다 현재봉 (등락, 가격)이 제일 큰 종목 중, 최고등락을 종목을 선택
            // 최근 5봉중 등락 -1% 미만은 제외

            Dictionary<string, double> maxRateDic = new Dictionary<string, double>();

            foreach (string currency in usingCurrencyList)
            {
                double maxRate = 0;
                double rate;
                //double maxClose = 0;
                //double close;
                bool skip_conditon = false;
                for (int i = 1; i <= 5; i++)
                {
                    rate = logicDic[currency].GetRate(SERIES_TYPE.MIN_60, i);

                    if (rate < -1)
                    {
                        skip_conditon = true;
                        break;
                    }

                    if (maxRate < rate)
                        maxRate = rate;
                }

                if (skip_conditon)
                    continue;

                if (0.5 <= logicDic[currency].GetRate(SERIES_TYPE.MIN_60, 0) &&
                    maxRate < logicDic[currency].GetRate(SERIES_TYPE.MIN_60, 0))
                {
                    maxRateDic[currency] = maxRate;
                }
            }

            if (maxRateDic.Count < 4)
                return null;

            return maxRateDic.FirstOrDefault(x => x.Value == maxRateDic.Values.Max()).Key;
        }

당장 수익내려고 만들기 보다는,
대략적인 구성을 해놓아야 나중에 접근이 쉬울것같아서 해놓은거고
몇 시간(?), 일(?) 후에 시그널이 발생한다면 다음 포스팅때 같이 공개하겠습니다. ^^
자랑하려는거는 아니고, 위 소스가 작동하면 이렇게 된다... 정도만 참고하면 될듯.

#현재까지 완료된 실행파일 : http://bitcoin.cowincomfunny.com/
API제한이 있으니(Private는 초당10회) 프로세스를 여러개 실행하면 안됩니다

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

와~~~~ 대단합니다. kr-dev에 막강한 것들이 나오고 있습니다. 기대됩니다.

꾸준히 기능추가 할 예정입니다. ^^ 감사합니다.

wow

indeed

감사합니다. 아주 흥미진지합니다

저도 시그널이 기대되네요 ^^

뉴비는 언제나 응원!이에요.
팁! : 스팀파워가 50%일때보다 100%일때 보팅파워가 더 세단 걸 알고 계신가요?
10.42% 보팅
현재 보상량 : [ 평균 - 0.70 / 7개 / 합계 : 4.93 ]

  • kr-newbie 보안관 봇! (beta 0.5.0 - 2017/07/17)

점점 좋아지는군요!

아직 갈 길이 멉니다~^^