[지표식]RSI 기준선 긋기
오랜만에 YL(YesLanguage)를 보고 있는데, 예스스탁 게시판의 올라온 질문과 답변을 보고 공부를 하는 중이다. 앞으로 이런 포스팅을 자주 할 생각인데, 이런 저런 프로그래밍 문법을 보고 하는 것도 좋치만, 실제 코드를 보면서 하는 것이 효과적이다. [질문] RSI의 기본적인 과매수 기준값인 70 이상에서 RSI값이 70 이하로 내려오는 시점을...
View Article[Xing API]xingAPI활용교육샘플v1.3.xlsm(1)
Xing API를 익히는 데 가장 편리한 수단은 예제파일을 보고 따라하는 방식인데, 그중 가장 편리한 방법은 이베스트투자증권에서 제공하는 엑셀예제파일을 분석하는 것이다. 이번에 코드해설을 해볼 요량으로 하나 집어 본 것이 xingAPI활용교육샘플v1.3.xlsm이다. 예제파일에서 코드는 대략 세 곳에 있다. 하나는 워크시트내, 또 하나는 사용자 정의폼,...
View Article[Xing API]xingAPI활용교육샘플v1.3.xlsm(2)-참조 및 사용자 정의 폼
지난 번 포스팅에서는 전체적인 개요를 설명하였다. 예제파일은 비록 하나의 엑셀파일에 불과하지만, 하나의 시스템이고 그 안에는 배울 수 있는 정보가 많이 있다. 그래서 전체적인 시스템의 구조와 코드블럭들이 어느 기능을 하는 지 정도만 살펴보았다. 앞으로는 각 코드블럭을 하나 하나 꺼내어 코드해설을 달아보려고 한다. 오늘은 [참조]와 [사용자 정의 폼]이다....
View ArticleLookup()함수의 은밀한 사생활
vlookup()함수에 밀려 주목받지 못하는 형제들이 있는데, hlookup(), lookup()이 그들이다. 그중 lookup()에는 이상한 성질이 있는데, 찾으려는 값이 검색범위을 벗어나 큰 값인 경우(가령 찾는 값이 6인데, 검색범위가 1~5사이라면) 마지막 데이터를 돌려준다는 것이다. 위의 그림에서 1~5사이의 값을 주면 옆 컬럼의 One, Two,...
View Article셀 범위가 아닌 배열로 차트 만들기
차트를 그리려면 셀 범위에 데이터가 있어야 하는 게 당연하다. 그러나 반드시 그럴 필요는 없다. 셀 범위 대신 배열을 계열의 데이터로 대신할 수 있다. 다만 엑셀이 아닌 vba가 필요하다. 다음의 코드는 배열을 갖고 차트를 만드는 예이다. Sub ChartFilledWithArray() Dim i As Long Dim x(1000, 0) As Double...
View Article[Xing API]xingAPI활용교육샘플v1.3.xlsm(3)-사용자 정의 폼의 코드
이번에는 사용자 정의 폼안의 코드를 살펴보려고 한다. 다행히 폼의 코드는 다음과 같이 간단하게 세 개의 프로시저가 있다. 프로시저의 이름을 보면 "_"가 가운데 있는 것을 볼 수 있다. "_" 왼쪽은 개체의 이름이고 "_"의 오른쪽은 이벤트(예를 들어 사용자가 버튼을 클릭하는 것이나 폼이 화면에 보이는 것 등등이 이벤트이다)가 발생할 때 해당 이벤트를...
View Article엑셀을 잘 표현할 수 있는 노래는...
https://youtu.be/e3-5YC_oHjE특히 VLOOKUP 함수로 뭔가 찾으려고 했는데, 에러 뜨는 상황이 떠오릅니다.I have climbed the highest mountainsI have run through the fieldsOnly to be with youOnly to be with youI have run I have...
View Article이거슨 숫자가 아녀~, 날짜로 바꿔
종종 엑셀이 주인의 말을 못알아 먹는다고 생각되는 경우가 있다. 문자로서 숫자를 입력하지만 엑셀은 덧하기/ 빼기/ 곱하기/ 나누기 와 같은 연산의 대상으로 알아먹는 경우이다. 숫자는 계산하는 용도로 주로 사용하지만, 관리나 식별을 위해 사용하기도 하고(버스 번호, 학급내 번호) 날짜를 표현하기 위해 사용한다. 아래와 같은 숫자를 우리는 숫자가 아닌 날짜로...
View Article[Xing API]xingAPI활용교육샘플v1.3.xlsm(4)-시세 워크시트
교육샘플 파일에는 3개의 워크시트가 있는데, 그중에서 [시세]워크시트의 구성과 관련코드를 알아 보도록 한다. [시세]워크시트는 다음 그림과 같이 1개의 종목코드를 입력하고 엔터를 누르면 그날의 가격관련 정보(시고저종 등등)를 보여주고, 호가창, 10분간격 시고저종 그리고 그날의 일봉차트로 구성되어 있다. 이번에는 코드를 살펴보도록 하자. [시세]워크시트는...
View Article잉여짓-간단한 일을 어렵게 해보기
위의 그림과 같은 행렬(4x3)이 있을 때, 각 행의 합계를 구하는 문제를 생각해보자. 보통은 간단히 SUM()함수나 수식을 이용하여 계산하면 된다. 이번에는 잉여스럽게 행렬곱셈을 이용하여 각 행의 합계를 구하는 삽질을 해보자. A, B를 각각 m × n, n × 1 행렬이라고 하자. 이때 B 행렬의 원소는 모두 1이다. A와 B의 곱 AB는 m × 1...
View Article[Xing API]xingAPI활용교육샘플v1.3.xlsm(5)-1101TR
Sheet1 상단의 전역변수중에는 조회를 위한 XAQuery개체가 선언되어 있다.Dim WithEvents XAQuery_t1101 As XAQuery ' [조회TR] 주식현재가 호가조회 Dim WithEvents XAQuery_t1302 As XAQuery ' [조회TR] 주식 분별 주가 조회이와 관련하여 오늘은 TR을 알아보는 시간을 가져보려고 한다....
View Article실수에서 소수점만 남기기(Decimal portion of a number)
예전에 실수값에서 정수부분은 버리고 소수점만 남기는 문제인데, 고민을 한 문제였다. 그런데 그 해답은 무척 싱겁다.=MOD(PI(),1)MOD()함수와 1이 중요하다
View Article규격화된 엑셀데이터는 여러모로 편리하다
사무실에서 흔하게 사용하는 엑셀을 사용하다 보면 , 데이터베이스와 달리 자유롭게 데이터를 입력하고 수정/삭제할 수 있다는 장점이 되려 단점이 되기도 한다. 데이터 정리함에 있어 원칙없이 입력하면, 통계를 내거나 분석을 하기 위한 작업에 시간이 걸릴 수 있다. 쉬운 예를 들어 다음과 같이 월별로 고정된 항목의 월별 합계를 구하는 문제의 경우 ,...
View Article아이고, 프로그램을 실행했는데, 작업표시줄에만...
Win10으로 넘어오면서 몇몇 게으른 프로그램들은 그에 맞게 업데이트를 하지 않아, 종종 문제이다. 개인적으로 이런 느낌을 밭는 것이 이베스트증권의 DevCenter이다. 윈도우 화면 해상도와 따로 노는 UI가 맘에 들리가 없다. 사실 오늘 할 얘기는 이게 아니다. 간만에 실행했더니, 작업표시줄에는 프로그램이 정상적으로 표시되는데, 모니터에 프로그램 화면이...
View Article[Xing API]xingAPI활용교육샘플v1.3.xlsm(6)-1302TR
Sheet1에서 사용하는 t1302은 분단위 주가를 돌려주는 TR이다. DevCenter에서 TR의 입력과 출력을 보면, 단축코드(shcode), 작업구분(gubun), 시간(time), 건수(cnt)를 넘겨준다. 출력은 두 개의 블럭이 있는데, 하나는 t1302OutBlock, 나머지 하나는 t1302OutBlock1이다. t1302OutBlock에서는...
View Article망한 알고리즘
여행가방의 잔해중 비밀번호를 잊어버린 자물쇠가 하나 있다. 세 개의 다이얼을 조합하여 풀어야 하는데, 경우의 수가 1,000개이다.심심하던 차에 비밀번호를 풀어 보려고 하는데 , 999부터 시작하여 000까지 해보려고 했다. 아무래도 비밀번호가 그 중간인 500이상일 거라는 근거없는 추측탓이다.운이 좋으면 500번 이내의 시행에서 끝날 것이다. 그러나 운이...
View Article[Xing API]xingAPI활용교육샘플v1.3.xlsm(7)-[주문&계좌][잔고조회]
[주문&계좌]워크시트는 세 가지의 기능을 가지고 있다. 시트 왼쪽부터 1)잔고를 조회하고, 2)매수/매도주문과 주문정정/취소하는 기능 3)체결내역을 조회하는 기능이 있다. 1)잔고조회 잔고조회 관련 버튼은 [잔고조회]버튼과 [잔고다음조회]버튼이 있다. 잔고를 조회하려면 TR(CSPAQ13700)이 필요한 데, 관련한 전역변수는 다음과 같이 선언되어...
View Article자바스크립트를 오랜만에 해봅니다.
예전에 알던 자바스크립트는 기껏 브라우저에서나 돌아가는 그저 그런 언어였는데, 이제는 중요한 스크립트언어로 자리잡고 있군요.장고, 플라스크 웹프레임워크를 이용한 웹프로그래밍과 쥬피터,텐서플로,넘파이,판다스를 이용한 데이터사이언스 및 딥러닝 언어로 파이썬은 참 매력덩어리인데, 자바스크립트는 그보다 더 대단한 언어더군요.다시 자바스크립트의 함정에 빠져...
View ArticleJoining data in R with dplyr
[그림출처: TWITTER]https://twitter.com/grrrck/status/1029567123029467136 조인과 관련한 몇 가지 코딩을 하자면; library(dplyr) Ldata<-data.frame(ID=c('A', 'B', 'C'), x=c(1, 2, 3)) Rdata<-data.frame(ID=c('A', 'B',...
View Article