3. 비트코인 선물/3-3. 비트코인 알고리즘 패턴 찾기

(바이비트 비트코인 자동매매API) 알고리즘 패턴 찾기 (15) 범위 내 최소값 위치(셀 주소) 찾기 (엑셀 offset, min 함수 활용)

봄이오네 2022. 12. 12. 08:07
반응형
목 차
1. 들어가며
2. 사전설명
  1) ROW 함수 : 현재 셀의 "행" 번호를 반환한다.
  2) INDEX(범위, MATCH(기준값, 범위, 0), 1)
  3  ) OFFSET 함수
3. 범위 내 최소값(lowest)의 행 주소
  1) INDEX / MATCH 함수 조합을 확인하자.
  2) OFFSET 함수로 이동 및 범위 지정
  3) INDEX / MATCH 조합
  4) ROW (함수)
4. 진입점 - 최소값 계산
5. 마치며

1. 들어가며

지난 글에서는 범위 내 최소값을 구해보았다.

함수형태 : min ( offset (기준값1) : offset (기준값2) )

 

이번 글에서는 위에서 구한 "범위 내 최소값"의 행 주소를 알아보고,

"진입값 - 최소값"을 통해, 패턴별 1차 손절 타점을 잡아보자. (long 기준)

 

아래 첨부파일의 AC열~AD열에 대한 설명이다.

(붙임1) 비트코인 패턴 만들기 (AC~AD) 최소값 위치찾기).xlsx
0.42MB

 

2. 사전설명

1) ROW 함수 : 현재 셀의 "행" 번호를 반환한다.

2) INDEX(범위, MATCH(기준값, 범위, 0), 1)

    : 범위 내 1번째 열기준값의 행 번호에 해당하는 데이터를 반환한다.

3) OFFSET 함수

    : OFFSET(기준값, 행 이동, 열 이동, 행범위, 열범위)

      → 기준값을 기준으로, 행/열 이동, 행/열 범위를 지정한다.


3. 범위 내 최소값(lowest)의 행 주소

그림. 최소값(lowest)의 행 주소(AC7셀)를 확인하는 방법

 

AC7 셀에 입력된 주소를 보자.

함수 형태 : ROW(INDEX(OFFSET(INDEX($F$7:$I$1513,MATCH($W7,$I$7:$I$1513,0),1),1,,20,),

                            MATCH(MIN(OFFSET(INDEX($F$7:$I$1513,MATCH($W7,$I$7:$I$1513,0),1),1,,20,)),

                                                  OFFSET(INDEX($F$7:$I$1513,MATCH($W7,$I$7:$I$1513,0),1),1,,20,),0)))

 

1) INDEX / MATCH 함수 조합을 확인하자.

INDEX($F$7:$I$1513, → F7 ~ i1513 범위내에서

MATCH($W7,$I$7:$I$1513,0) → w7을 기준으로, i7~i1513과 일치(0)하는 반환값은 12행이다.

,1) F7 ~ i1513에서 첫번째 행(1)은 F열이다.

 

즉, INDEX($F$7:$I$1513,MATCH($W7,$I$7:$I$1513,0),1)은 F12로 반환된다.

 

2) OFFSET 함수로 이동 및 범위 지정

함수 형태 : ROW(INDEX(OFFSET(INDEX($F$7:$I$1513,MATCH($W7,$I$7:$I$1513,0),1),1,,20,),

                            MATCH(MIN(OFFSET(INDEX($F$7:$I$1513,MATCH($W7,$I$7:$I$1513,0),1),1,,20,)),

                                                  OFFSET(INDEX($F$7:$I$1513,MATCH($W7,$I$7:$I$1513,0),1),1,,20,),0)))

 

녹색으로 된 부분은 반환되는 F12 셀은 아래와 같이 변경된다.

ROW(INDEX(OFFSET(

F12

,1,,20,), MATCH(MIN(OFFSET(F12,1,,20,)), OFFSET(F12,1,,20,),0)))

 

OFFSET(F12, 1, , 20,)이면

F12 셀을 기준으로 1칸 아래로 이동(F13)하되, 좌/우는 움직이지 말고,

F13칸을 포함하여 20칸 아래로 범위 지정하라. → F13 ~ F32

즉, OFFSET(F12,1, , 20,) → F13 ~ F32

 

3) INDEX / MATCH 조합

ROW(INDEX(OFFSET(F12,1,,20,), MATCH(MIN(OFFSET(F12,1,,20,)), OFFSET(F12,1,,20,),0)))

 

위의 함수를 다시 정리해보면,

ROW(INDEX(F13 : F32, MATCH(MIN(F13 : F32), F13 : F32,0)))

 

INDEX(F13 : F32, : F13 ~ F32 범위에서

MATCH(MIN(F13 : F32), : 가장 작은 최소값(lowest)의 셀은 F18행의 21,282달러이다.

 

즉, INDEX(F13 : F32, MATCH(MIN(F13 : F32), F13 : F32,0)) → F18이 반환된다.

 

4) ROW (함수)

ROW ( F18) 이면, → 18이 반환된다. (AC7 셀의 값)

 

4. 진입점 - 최소값 계산

진입점(X7)의 값은 21,286달러이고,

패턴(0.50.00.0=1)의 최소값(F18)은 21,282달러이므로

진입점 - 최소값은 4달러(AD7)이다.

 

5. 마치며

AC7 셀의 함수가 상당히 복잡하다.

필자가 말하고 싶은 부분은,

동적 데이터에서 최소값의 위치가 계속 변할 텐데,

각 패턴에 따른 최소점의 결과값 및 그 위치를 알고 싶었다.

 

다음 시간에는 기본적인 승/패를 알아볼 것이다.

(최대값이 먼저 나오면 승, 최소값이 먼저 나오면 패)

반응형