일반적인 기술적 분석 지표

마지막 업데이트: 2022년 6월 25일 | 0개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
삼성전자 차트(영웅문)

일반적인 기술적 분석 지표

TA-Lib 은 C 언어로 구현 된 금융 거래 기술 분석의 일반적으로 사용되는 여러 지표를 캡슐화하는 Python 라이브러리입니다. 사용자가 DolphinDB에서 이러한 기술 지표를 쉽게 계산할 수 있도록 DolphinDB 스크립트를 사용하여 일반적인 기술적 분석 지표 TA-Lib에 포함 된 지표 함수를 구현하고 DolphinDB ta 모듈 (ta.dos)에 캡슐화합니다 . ta module을 사용하려면 DolphinDB Database Server 1.10.3 이상이 필요합니다 .

1. 함수 및 매개 변수의 이름 지정 및 사용 사양

  • TA-Lib에서 모든 함수명을 대문자로, 모든 매개 변수 명을 소문자로 지정하는 것과는 달리, ta 모듈에서 함수명과 매개 변수 명은 카멜 케이스 명명 방식을 채택합니다.

예를 들어 TA-Lib의 DEMA 함수 구문은 DEMA(close, timeperiod=30) . ta 모듈의 해당 기능은 dema(close, timePeriod) 입니다.

  • TA-Lib의 일부 기능에는 선택적 매개 변수가 있습니다. ta 모듈에서 모든 매개 변수는 필수입니다.
  • 의미있는 결과를 얻으려면 ta 모듈에있는 함수의 매개 변수 timePeriod가 2 이상이어야합니다.

2. 사용 예

2.1 스크립트에서 인디케이터 함수 직접 사용

ta 모듈의 wma 함수를 사용하여 직접 벡터를 계산 합니다 .

2.2 SQL 문에서 그룹으로 사용

사용자는 종종 데이터 테이블의 각 그룹에서 여러 데이터 세트를 계산해야합니다. 다음 예에서는 2 개의 주식을 포함하는 데이터 테이블을 생성합니다.

ta 모듈의 wma 함수를 사용하여 각 주식 을 계산 합니다 .

2.3 여러 열의 결과 반환

일부 함수는 functions와 같은 여러 열에 결과를 반환합니다 bBands .

3. 성능 설명

TA-Lib의 해당 기능과 비교할 때 ta 모듈의 기능은 직접 사용할 때 비슷한 평균 속도를 갖지만 그룹 계산에서는 ta 모듈의 기능 성능이 TA-Lib의 해당 기능을 훨씬 능가합니다. 이 섹션의 성능 비교를 위해 wma 함수를 예로 들어 보겠습니다.

3.1 직접 사용 성능 비교

길이가 1,000,000 인 벡터에 대해 ta 모듈의 wma 함수 를 직접 사용하면 3 밀리 초가 걸립니다.

해당 Python 문은 다음과 같습니다.

TA-Lib의 WMA 함수는 11 밀리 초가 걸리며 이는 DolphinDB ta 모듈 wma 함수 의 3.7 배 입니다 .

3.2 그룹화 성능 비교

DolphinDB에서 총 길이가 1,000,000 인 1000 개의 주식을 포함하는 데이터 테이블을 생성합니다.

ta 모듈의 wma 함수를 사용하여 17 밀리 초가 걸리는 각 재고를 계산합니다.

해당 Python 문은 다음과 같습니다.

TA-Lib WMA 의 함수를 사용하여 각 주식을 계산하는 데 535 밀리 초가 걸리며 이는 ta 모듈의 wma 함수보다 31.5 배 입니다 .

4. 벡터화 구현

TA-Lib과 마찬가지로 ta 모듈의 모든 함수는 벡터 함수입니다. 입력은 벡터이고 출력 결과도 동일한 길이의 벡터입니다. TA-Lib의 하단 레이어는 C 언어로 구현되어 매우 효율적입니다. ta 모듈은 DolphinDB의 스크립팅 언어로 구현되어 있지만 내장 벡터화 함수와 고차 함수를 최대한 활용하고 루프를 방지하며 매우 효율적입니다. 구현 된 57 개 기능 중 28 개 기능은 TA-Lib보다 빠르게 실행되고, 가장 빠른 기능은 TA-Lib 성능의 약 3 배, 29 개 기능은 TA-LIB보다 느리고 가장 느린 성능은 일반적인 기술적 분석 지표 TA-Lib의 1/3.

ta 모듈의 함수 구현도 매우 간결합니다. ta.dos에는 총 765 개의 라인이 있으며 기능 당 평균 약 14 개의 라인이 있습니다. 주석, 빈 줄, 함수 정의의 시작 및 끝 줄, 입력 매개 변수 시작 부분의 null 값을 제거하는 파이프 라인 코드를 제외하면 각 함수의 핵심 코드는 약 4 줄입니다. 사용자는 ta 모듈의 함수 코드를 탐색하고 효율적인 벡터화 프로그래밍을 위해 DolphinDB 스크립트를 사용하는 방법을 배울 수 있습니다.

4.1. 널값 처리

TA-Lib의 입력 벡터에 null 값이 포함되기 시작하면 비어 있지 않은 첫 번째 위치에서 계산이 시작됩니다. ta 모듈은 동일한 전략을 사용합니다. 롤링 / 누적 창 함수를 계산하는 동안 창 길이에 도달하지 않은 각 초기 값 그룹에 대해 해당 위치의 결과가 비어 있습니다. 이와 관련하여 TA-Lib 및 ta 모듈의 결과는 일관됩니다. 그러나 나중에 null 값이있는 경우이 위치의 결과와 TA-Lib 함수의 모든 후속 위치는 null 값이 될 수 있습니다. 창에있는 null이 아닌 값 데이터의 수가 지표를 계산하기에 충분하지 않은 경우 (예 : 분산을 계산할 때 null이 아닌 값이 하나만 있음), null 값의 수는 생성에 영향을주지 않습니다. ta 모듈 함수 결과.

위의 전체 분산 계산에서 close의 두 번째 값이 null 값이기 때문에 ta 모듈과 TA-Lib의 출력이 다르고 TA-Lib의 출력이 모두 null입니다. null 값을 81.11로 바꾸면 ta 모듈과 TA-Lib가 동일한 결과를 얻습니다. 첫 번째 요소 99.9 앞에 null 값을 추가하면 두 요소의 결과는 여전히 동일합니다. 간단히 말해서, 입력 매개 변수의 처음 k 요소 만 비어있을 때 ta 모듈과 TA-Lib의 출력 결과는 정확히 동일합니다.

4.2 반복 처리

기술 분석에서 많은 지표 계산은 반복을 사용합니다. 즉, 현재 지표 값은 이전 지표 값과 현재 입력에 따라 달라집니다. r [n] = coeff * r [n-1] + input [n]. 이러한 유형의 계산을 iterate 위해 DolphinDB는 벡터화를위한 함수 를 도입 하여 루프 사용을 피합니다.

복용 ema 일례로서 기능 구현 코드의 다섯 번째 라인은 반복 서열의 초기 값으로서, 상기 윈도우의 평균값을 산출한다. 여섯 번째 코드 줄은 반복 매개 변수를 정의합니다. 코드의 7 번째 줄은 iterate 함수를 사용하여 ema 시퀀스를 계산합니다. 내장 함수 iterate 는 매우 높은 작동 효율을 가지고 있으며, 길이가 1,000,000 인 벡터의 ema 시퀀스를 계산합니다. 윈도우 길이가 10 일 때 TA-Lib은 7.4ms, ta 모듈은 5.0ms 만 걸립니다. TA-Lib보다 빠릅니다.

4.3 슬라이딩 윈도우 기능 적용

대부분의 기술 지표는 슬라이딩 윈도우를 지정하고 각 윈도우의 지표 값을 계산합니다. DolphinDB 내장 함수를 포함하는 슬라이딩 윈도우 계산의 기준 인덱스 부분에 포함되어 mcount , mavg , msum , mmax , mmin , mimax , mimin , mmed , mpercentile , mrank , mmad , mbeta , mcorr , mcovar , mstd 및 mvar . 이러한 기본 슬라이딩 윈도우 기능은 완전히 최적화되었으며 대부분의 기능의 복잡성은 O (n)에 도달했습니다. 즉, 윈도우 길이와 관련이 없습니다. 더 복잡한 슬라이딩 표시기는 위의 기본 표시기를 겹치거나 변형하여 얻을 수 있습니다. ta :: var는 전체 분산이고 DolphinDB의 기본 제공 mvar는 샘플 분산이므로 조정해야합니다.

아래에서는 linearreg_slope 표시기의 실현이라는 더 복잡한 예를 제공합니다. Linearreg_slope는 실제로 시퀀스 0 .. (timePeriod-1)에 대한 가까운 베타를 계산합니다. 이 지표는 일반적인 기술적 분석 지표 벡터화되지 않은 것 같습니다. 각 창의 데이터를 꺼내고 베타 계산을 주기적으로 수행해야합니다. 그러나 실제로이 예제에서 독립 변수는 매우 특별하며 고정 된 산술 시퀀스이며 다음 창의 베타를 계산할 때 증분 계산으로 최적화 할 수 있습니다. beta (A, B) = (sumAB-sumA * sumB / obs) / varB, varB 및 sumB는 고정되어 있으므로 창을 슬라이드 할 때 sumAB 및 sumA의 계산 만 최적화하면됩니다. 수식의 단순화를 통해 두 창 사이의 sumAB의 변화는 벡터화에 의해 실현 될 수 있으며 자세한 내용은 코드의 10 행을 참조하십시오. 코드의 12 번째 줄은 첫 번째 창의 sumAB를 계산합니다. 코드 13 행의 sumABDelta.cumsum ()은 모든 창의 sumAB 값을 벡터화합니다.

길이가 1,000,000 인 벡터의 linearreg_slope 시퀀스를 계산합니다. 윈도우 길이가 10 일 때 TA-Lib은 13ms, ta 모듈은 14ms가 걸립니다. 둘은 거의 같습니다. 스크립트로 구현하는 것은 쉽지 않습니다. 윈도우가 20으로 증가하면 TA-Lib의 시간 소모는 22ms로 증가하고 ta의 시간 소모는 여전히 14ms입니다. 이것은 TA-Lib의 구현이 루프를 사용하여 각 창을 개별적으로 계산하는 반면 ta는 창의 길이에 관계없이 벡터화 된 계산을 구현 함을 보여줍니다.

4.4 데이터 중복을 줄이는 기법

벡터에서 슬라이스, 조인 및 추가와 같은 작업을 수행 할 때 많은 양의 데이터가 복사 될 수 있습니다. 일반적으로 데이터 복사는 많은 간단한 계산보다 시간이 많이 걸립니다. 다음은 몇 가지 실용적인 예를 통해 데이터 중복을 줄이는 방법에 대한 몇 가지 팁입니다.

4.4.1 벡터보기 하위 배열을 사용하여 데이터 복사 줄이기

계산을 위해 벡터의 하위 창을 직접 슬라이스하면 새 벡터가 생성되고 데이터가 복사되므로 더 많은 메모리를 차지할뿐만 아니라 시간도 걸립니다. DolphinDB는이를 위해 새로운 데이터 구조를 도입했습니다 subarray . 실제로 원래 벡터의보기이며 원래 벡터의 포인터와 시작 및 끝 위치를 기록하고 새 벡터를 저장하기 위해 큰 메모리 블록을 할당하지 않으므로 실제로 데이터 복사가 발생하지 않습니다. . 모든 벡터 읽기 전용 작업은 하위 배열에 직접 적용 할 수 있습니다. ema 및 linearreg_slope의 구현은 하위 배열을 광범위하게 사용합니다. 다음 예에서는 백만 길이 벡터에 대해 100 개의 슬라이스 작업을 수행합니다. 길이는 62ms이고 각 작업에는 0.62ms가 걸립니다. 4.2에서 백만 길이 벡터를 테스트하기위한 ema 작업이 5ms에 불과하다는 점을 고려할 때 0.62ms의 절약은 매우 중요합니다.

4.4.2 확장을 피하기 위해 벡터의 용량 지정

벡터 끝에 데이터를 추가 할 때 용량이 충분하지 않으면 더 큰 메모리 공간을 할당하고 이전 데이터를 새 메모리 공간에 복사 한 다음 마지막으로 이전 메모리 공간을 해제해야합니다. 벡터가 상대적으로 크면이 작업에 시간이 많이 걸릴 수 있습니다. 벡터의 최종 길이가 명확하게 알려진 경우이 길이를 벡터의 용량으로 미리 지정하면 벡터 확장의 발생을 피할 수 있습니다. DolphinDB의 내장 함수 배열 (dataType, [initialSize], [capacity], [defaultValue])은 생성시 용량을 지정할 수 있습니다. 예를 들어 ema 함수의 8 행에서 먼저 용량이 n 인 벡터를 만든 다음 계산 결과를 추가합니다.

알파스퀘어 기술적지표

볼린저 밴드는 주가의 변동을 분석하기 위해, 중심이 되는 이동평균선을 기준으로 일정한 표준편차 범위만큼 설정한 그래프를 말한다. 가격의 추세를 포착할 수 있도록 설정된 중간선 (중단 밴드)과 가격의 상대적 높낮음에 대한 판단 기준이 되는 두 개의 밴드 (상단,하단)로 구성되어 있다.

볼린저 밴드가 만들어지기 이전인 60~70년대에는 단순히 이동평균의 백분율을 기반으로 한 밴드 지표들이 성행했다. 하지만 이 방식은 시장이 변화함에 따라서 투자자가 비율을 임의로 조정해야했기 때문에 일관성이 부족하다는 단점이 있었다.

RSI 는 대표적인 모멘텀 지표 중 하나로, 주가의 평균 상승폭과 하락폭을 비교하여 가격의 상승 압력과 하락 압력 간의 상대적인 강도 를 나타내는 기술적 지표이다. 현재의 시장 상황이 과매수 상태인지 아니면 과매도 상태인지 판단하기 위해 고안되었으며, 보통 RSI 70 이상을 과매수 상태로, RSI 30 이하를 과매도 상태로 판단하는 것이 일반적이다.

RSI는 미국의 월레스 와일더(J. Welles Wilder Jr.)가 그의 저서 ' New Concepts in Technical Trading Systems' 에서 처음 소개하였다.

MACD 는 이동평균수렴발산(Mean Average Convergence Divergence)의 약자로, 단기 이동평균선과 장기 이동평균선이 서로 가까워지거나(수렴) 멀어지는(발산) 원리를 이용하여 만들어졌다.주가 흐름의 추세를 확인하고 추세의 강도와 지속성을 파악하는데 활용되는 대표적인 추세추종형 보조지표이다.

스토캐스틱 패스트(Stochastic Fast)는 일정 기간 동안의 최고가와 최저가의 범위 중에서 현재 가격의 위치를 백분율로 나타내는 일반적인 기술적 분석 지표 기술적 지표이다. 주가가 과열 구간에 들어서게 되면 조만간 하락하고 반대로 주가가 침체 구간에 들어서게 되면 조만간 반등하는 속성을 반영하고 있다.

정식 명칭은 스토캐스틱 오실레이터(Stochastic Oscillator)로, 1950년년대 조지 레인(George C. Lane)에 의해 고안되었다. 주가 추세의 변화속도를 설명하는 모멘텀은 가격이 변하기 전에 미리 바뀌는 성질을 가진다. 이러한 성질을 이용하여, 스토캐스틱을 모멘텀 지표로써 주가의 변화를 예측하는 도구로 개발하였다.

스토캐스틱 슬로우(Stochastic Slow)는 노이즈가 많고 변동이 많은 스토캐스틱 패스트 (Stochastic Fast)의 민감도를 낮추고, 안정성을 높여 보완한 지표 로, 최근 N일 간의 최고가와 최저가의 범위 내에서 현재가격의 위치를 백분율로 나타내는 기술적 지표이다. 스토캐스틱 패스트와 마찬가지로, %K와 %D로 구성 되어있으며, %K는 스토캐스틱 패스트의 %D와 동일하며, %D는 %K의 이동 평균이다.

정식명칭은 스토캐스틱 오실레이터(Stochastic Oscillator)로, 1950년대 조지 레인(George C. Lane)에 의해 고안되었다. 스토캐스틱 슬로우는 차트 변동성이 커서 가짜 신호를 유발하는 스토캐스틱 패스트의 차트를 굴곡을 완만하게 하여 사용하고자 개발되었다.

CCI(Commodity Channel Index)는 추세채널지수로 불리며, 현재의 주가가 이동평균으로부터 얼마나 떨어져있는지를 측정하는 지표 이다. 주가가 평균으로부터 멀어지면 다시 평균으로 회귀하려는 속성을 활용한 것으로, 현재 시장의 추세를 파악하고 어떤 상태인지 알려주는 경계신호 로 사용된다.

CCI는 1980년에 도널드 램버트(Donald Lambert)가 고안한 추세지표이다. 본래는 상품가격의 계절성, 주기성에 의한 가격변동의 방향과 강도 등을 확인하기 위해 만들어진 지표이지만, 현재는 상품 뿐 아니라 주식이나 가상화폐 등의 추세를 파악하는데 있어서 널리 사용되는 일반적인 지표로 인정받게 되었다.

PSAR (Parabolic Stop and Reverse) 은 추세 전환을 파악하는 데에 효과적인 기술적 지표 로, 청산 시점과 추세 전환 시점을 알아내기 위해 사용된다. 상승 추세일 때는 주가 차트의 위를, 하락 추세일 때는 주가 차트의 아래를 포물선으로 감싸는 형태로 표현된다.

PSAR은 미국의 기술적 분석가이며, RSI, ATR 등의 창시자로 알려진 J. Welles Wilder에 의해 고안되었다. 1978년, 그의 저서인 “ New Concepts in Technical Trading Systems ”에서 ‘Parabolic time/price System’라는 이름으로 소개되었다.

이동평균선 은 가장 기본적으로 사용되는 기술적 분석 지표로, 일정 기간 동안의 가격 평균을 보여 준다 . 차트를 해석할 때 잡음(noise)을 줄여줌으로써 추세를 일반적인 기술적 분석 지표 보다 명확하게 파악하는 데 도움이 된다. 후행성 지표이기 때문에 미래를 예측하기보다는 현재 상태를 확인하고 분석하는 해석 지표로 사용하는 것이 일반적이다.

일목균형표 는 다양한 기술적 전략들을 하나의 지표 안에 구현한 표이다. 이동평균선, 엘리어트 파동론 등 기존에 있던 다양한 일반적인 기술적 분석 지표 분석방법을 종합적으로 포괄하고 있어 복합추세추종이 가능하다. 총 5개의 선으로 구성되어 있으며 기술적 지표의 단점인 후행성을 극복한 선행성을 가진 지표가 포함되어있다. 일목균형표는 오늘날의 보조지표들 중 가장 많이 쓰이는 지표 중 하나이다.

일목균형표는 1935년 일목산인이라는 필명을 가진 호소다 고이치가 개발하였다. 신문기자 였던 일목산인은 다양한 기술적 전략들을 하나의 지표 안에 이해하기 쉽게 구현하고자 일목균형표를 고안하였다. 그는 시장의 움직임은 매입세와 매도세 간의 균형이 무너진 방향이라고 생각하여 이러한 균형을 차트로 나타내고자 하였고 그 결과로 일목균형표를 개발하였다.

중심선 은 주가의 이동평균 을 나타내며, 중심선의 위아래로 일정 퍼센트만큼 멀어진 위치에 상단 밴드와 하단 밴드를 표시 한다. 추세를 확인하고 지지선과 저항선을 파악하기 위해 사용할 수 있지만, 주가가 엔벨로프를 돌파할지 여부를 알 수 없다는 단점을 가진다.

볼린저 밴드의 창시자인 존 볼린저(John Bollinger)에 의하면, 트레이딩 밴드와 엔벨로프에 대한 개념을 처음 언급한 사람은 윌프리드 르두(Wilfrid LeDoux)이다. 르두는 1960년에 트윈-라인 차트의 저작권을 등록하며, 월별 고가를 이은 상단 밴드와 저가를 이은 하단 밴드를 활용한 트레이딩 밴드의 개념을 공개했다.

OBV(On 일반적인 기술적 분석 지표 Balance Volume)는 대표적인 거래량 지표로, 거래량 이동평균과 함께 기술적 분석가들에게 가장 많이 이용되는 거래량 지표 중 하나이다. 거래량은 항상 주가에 선행한다는 것을 전제로, 거래량 분석을 통해 주가의 변동을 분석하기 위해 사용된다.

주가가 상승하면 그 날의 거래량을 더하고, 주가가 하락하면 그 날의 거래량을 차감하여 거래량의 누적 변동을 표현한다 . 같은 수준의 주가가 상승하더라도 거래량이 동반되지 않은 상승은 매수강도가 약하고 대규모 거래량을 수반한 주가의 상승은 매수강도가 강하다는 개념을 수치화한 지표이다.

OBV는 조 그랜빌(Joe Granville)이 개발해 1963년 그의 저서 “ Granville’s New Key to Stock Market Profits ”에 소개되었다. 그랜빌은 거래량이 시장을 움직이는 핵심적인 요소라고 생각했고, 거래량의 변화를 기반으로 시장의 주요한 움직임을 예측하고자 OBV를 고안하였다.

⎧ ​ OBV t − 1 ​ + 거래 량 t ​ , OBV t − 1 ​ , OBV t − 1 ​ − 거래 량 t ​ , ​ if 종가 t ​ > 종가 t − 1 ​ if 종가 t ​ = 종가 t − 1 ​ if 종가 t ​ < 종가 t − 1 ​ ​

고급 실시간 차트위젯

여기 어떤 웹사이트던지 쉽게 임베드해 쓸 수 있는 파워풀하면서도 무료인 차트가 있습니다. 여러 가지 커스터마이즈 옵션으로 여러분만의 차트를 만들어 보십시오.

실제 응용사례

금융사이트에서 활용되고 있는 TradingView 차트 예제

고급 차트사용자를 만족시키려면 100여개 이상의 일반적인 기술적 분석 지표 드로잉을 제공해야 합니다. 위젯에 디폴트로 들어가 있는 지표들도 넣을 수 있습니다. 당연히, 기본으로 제공되는 80+ 지표 또한 쓸 수 있습니다. 무한한 가능성이 있습니다 - 차트 왼쪽에 두번째 가격눈금을 넣는 일, 또 눈금을 백분율 또는 로근 눈금으로 바꾸는 일 등을 할 수도 있습니다. 여러 종목을 겹쳐 보면서 비교하거나 다른 서브차트로 넣을 수도 있습니다.

일반유저용 기본 금융차트가 필요한 것이라면 위젯에 너무 많은 옵션을 넣지 않는 것이 좋습니다. 차트는 가장 기본 차트종류인 영역 차트 (Area chart) 로 할 수 있습니다 - 그다지 많은 공간을 차지하지 않으면서도 훌륭해 보입니다! 그래도 여전히 너무 버겁다면, 당사의 마켓오버뷰 및 심볼오버뷰 위젯을 살펴보십시오.

차트와 연결되는 와치리스트를 넣을 수 있습니다. 와치리스트에 있는 종목을 클릭하면 차트에 그 종목이 나타납니다. 귀하의 유저에게 무엇을 보여줄 것이냐에 따라 미리 지정된 리스트나 다이내믹하게 변하는 리스트를 넣을 수도 있습니다.

간단한 차트에서 시작하여 최고 수익주/손실주 핫리스트, 개별종목 세부사항, 뉴스, 경제일정칼렌다 등을 넣어 총체적인 분석이 가능한 차트플랫폼을 만들 수 있습니다.

위젯에서는 왜 실시간 스탁 데이터가 없는 건가요?

거래소는 웹사이트마다 실시간 데이터 비용을 받고자 합니다. 거래소 규정에 따라 당사에서는 지연 데이터만 보내 드릴 수 있습니다. 여기 리스트에 거래소 리스트가 나와 있습니다. 포렉스와 크립토 데이터는 실시간으로 제공합니다.

왜 어떤 거래소들은 아무런 데이터가 나오지 않는 건가요?

당사에서는 전세계 수많은 거래소로부터 데이터를 지속적으로 사들이고 있으며 꾸준히 그러한 거래소를 늘려가고 있습니다. 몇몇 거래소는 아직까지는 지원되지 않고 있습니다. 지원되는 마켓 리스트는 여기에 나와 있습니다. 디스플레이할 데이터를 찾을 수 없나요? 이 폼에 적기 바랍니다.

위젯에 커스텀 프라이스 스크립트를 만들어 넣고 싶습니다.

아직은 위젯에 파인 스크립트를 넣을 수 없습니다. 님의 스크립트를 넣어 만든 아이디어를 퍼블리쉬하고 그것을 임베드할 수는 있습니다.

위젯에 스트래티지를 넣고 싶습니다.

아직은 위젯에 스트래티지를 넣을 수 없습니다. 님의 스트래티지를 넣어 만든 아이디어를 퍼블리쉬하고 그것을 임베드할 수는 있습니다.

"TradingView 전용 심볼"이란 메시지는 무슨 뜻인가요?

그 말은 위젯에서는 그 심볼을 어떠한 타임프레임으로도 보여 드릴 수 없다는 뜻입니다.

업그레이드 플랜을 사면 내 웹사이트에 실시간 데이터를 뿌릴 수 있나요?

안됩니다. 유료 업그레이드 플랜은 위젯 데이터와는 상관이 없습니다. 모든 업그레이드 플랜은 오로지 TradingView 쪽에만 영향을 끼집니다. 귀하의 사이트에 실시간 데이터를 뿌리고 싶다면 해당 거래소를 직접 컨택하십시오.

데이터 또는 인디케이터 밸류를 받을 수 있는 API 가 필요합니다.

데이터 액세스용 API 는 없습니다. 당사의 REST API 는 당사 트레이딩 플랫폼을 통해 지원되는 브로커를 위한 것입니다.

데이터를 익스포트/임포트하고 싶습니다.

아직은 트레이딩뷰에서 데이터 다운로드/익스포트는 할 수 없습니다.

위젯에 나오는 TradingView 브랜딩 (로고, 이름) 을 없애거나 다른 걸로 바꾸거나 아니면 내 것으로 넣고 싶습니다.

여러 옵션이 있으니 이 폼을 써서 컨택해 주십시오.

트레이딩뷰 어트리뷰션 (위젯 아래 텍스트 및 링크) 를 없애거나 바꾸고 싶습니다.

여러 옵션이 있으니 이 폼을 써서 컨택해 주십시오.

위젯이 서로 다른 스크린 사이즈에 맞지 않습니다. 어떻게 해야 하나요?

오토사이즈을 쓰도록 하십시오. 오토사이즈가 온이면 이 위젯은 둘러싸고 있는 엘리먼트의 모든 너비 및 높이를 100% 쓸 수 있게 됩니다. 올바르게 쓰려면 페어런트 높이를 특정값으로 세팅하는 것이 아주 중요합니다.

몇몇 색깔이나 폰트 사이즈를 바꾸고 싶습니다.

모든 위젯 세팅은 포인트-앤-클릭 컨스트럭터안에 나와 있습니다. 바꾸고자 하는 것이 그 안에 없다면 이 폼으로 컨택해 주십시오.

앵귤러 5 웹사이트에서 위젯을 쓸 수 있나요?

네 쓸 수 있습니다. 힌트를 드리겠습니다:

  1. 위젯을 쓰고자 하는페이지 어딘가에 위젯 스크립트를 카피/페이스트 하십시오:
  2. 세팅된 ID 어트리뷰트를 갖는 컨테이너 엘레먼트를 만드십시오.
  3. 위젯이 보이도록 new TradingView.widget() 펑크션을 콜하십시오. 파라미터 리스트에는 다른 세팅들과 함께 container_id 옵션도 들어가 있어야 하며 그 값은 앞서 새로 만든 컨테이너 ID 어트리뷰트 값이어야 합니다.

임베드 코드가 돌지 않는 까닭은?

잠재적으로 이 문제는 raw code 를 dynamically insert 함으로써 일어날 수 있으며 그로 인해 브라우저가 임베드된 스크립트를 막게 됩니다. 보기로, innerHTML 을 통해 injection 이 이뤄질 때 이런 일이 일어날 수 있습니다. 또한 어떤 라이브러리 (보기: jQuery) 를 써서 코드를 다이내믹하게 인젝트하려 할 때에도 적절한 위젯 초기화를 깨트릴 수 있습니다. 써드 파티 인프라 스트럭쳐가 운영하는 사이트에 코드를 임베딩하려면 그들의 지시를 따르거나 또는 플랫폼 개발자에게 도움을 받도록 하십시오.

기술적 분석 (4) - 스토캐스틱 (Stochastic Oscillator)

이번에 살펴볼 지표는 스토캐스틱(Stochastic Oscillator) 입니다. '모 변호사'가 마법의 지표라고도 불렀던 지표 입니다. 주로 차트의 추세를 파악하는데 사용합니다. 최근 N일간의 최고가와 최저가의 범위 내에서 현재 가격의 위치를 백분율로 표시한 지표입니다.

스토캐스틱 지표는 Fast와 Slow로 나뉘고, 각각의 %K, %D를 구합니다. Fast는 주가에 너무 민감하게 반응하기 때문에 스캘핑 등 아주 짧은 주기의 단타를 하시는 분들만 사용하고, 일반적으로 Slow를 매매에 활용하게 됩니다.

삼성전자 차트(영웅문)

Fast %D = Fast %K를 M기간 (지수)이동평균

Slow %D = Slow %K를 T기간 이동평균

보통 일반적인 기술적 분석 지표 N,M,T 값은 (12, 5, 5)로 세팅이 되어 있고, 본인의 거래 스타일에 맞게 변경합니다. 단기 매매의 경우에는 N,M,T를 더 작은 값으로, 장기 매매의 경우에는 더 큰 값으로 설정합니다.

위의 공식이 한눈에 들어오시나요? Fast %K가 높다면 N기간 중에서 현재가가 높이 형성 되어 있다는 의미고, %K가 낮다면, 현재가가 낮게 형성 되어 있다는 의미로 볼 수 있습니다.

스토캐스틱은 추세를 보는 지표라고 했습니다. 그래서 위의 특성들을 이용한 매매기법이 많습니다.

1) 과매수, 과매도 이용 기법

- 일반적으로 (20%, 80%)를 기준으로, %K가 20% 이하면 과매도 구간으로 보고 매수 포지션을 잡고, %가 80% 이상이면 과매수 구간으로 보고 매도 포지션을 잡는다.

데이터 분석의 유형 6가지 – 목적에 따라 달라지는 분석 방법

DataAnalysis (1)

데이터 분석을 시작하기 전 단계에서 분석을 일반적인 기술적 분석 지표 통해 알고 싶은 것이 “무엇”인지를 구체적으로 명확히 정의하지 않으면 “어떻게” 분석해야 할 지도 알기 어렵다.
문제 정의 단계에서 목표를 구체적으로 설정하는 것의 중요성은 많은 데이터 분석가들이 주지하고 있지만, 또 하나 이 단계에서 중요하게 생각해야 할 Task가 있다.
바로 “문제 유형 알기”가 그것이다. 내가 해결하고자 하는 문제가 어떤 유형의 문제인지를 알고 있어야 어떤 분석 방법을 사용할 것인지, 어떤 방법은 적당하지 않은지를 알 수 있게 된다. 이 포스팅에서는 데이터 분석 유형에 대해 정리하고, 해결해야 할 유형을 오해하고 있을 때 발생하는 문제를 알아보고자 한다.

1. Descriptive analysis

가장 기본이 되는 분석으로, 주어진 데이터를 요약/집계하여 결과를 도출하는 것이 Descriptive Analysis의 목표가 된다.
이번 달 매출액, 평균 세션 타임, 설문 응답자의 남/녀 비중 등이 이 유형의 분석 결과이다.
이러한 지표들은 Business 관점에서 보면 Bottom line이고, 특히 경영자, 주주 및 여러 이해관계자들이 가장 눈여겨 보는 지표이기 때문에 회사 차원에서 가장 중요한 수치이지만,
과거의 데이터를 단순 계산/집계하여 얻어진 Fact이기 때문에, 분석 결과를 따로 해석하는 과정(So what?, Can we apply this to other population?)을 거치지 않는다. (비즈니스가 아니라 분석 관점에서)

이 단계에서 주로 사용되는 그래프는 Pie chart, Box plot, Bar plot 등이 있으며, 요약 형식의 테이블도 주로 이러한 유형의 분석의 결과물 이다.

2. Exploratory analysis

EDA라고도 불리우는 Exploratory Analysis는 최근 Visualization이 데이터 분석의 화두로 떠오르면서 주목을 받게 된 분석 유형이다.
Exploratory Analysis의 주요 목표는 여러 변수 간 트렌드나 패턴, 관계를 찾는 것인데,
이 분석 역시 통계적 기법을 사용한 모델링이라기 보다는 그래프(주로 Plot)를 통한 사실 확인이 주된 작업이다.

주로 데이터 분석 프로젝트 초기에 가설을 수립하기 위해 수행되기도 한다.
새로운 데이터를 접할 때 마다 여러 변수들 간의 관계를 이리 저리 그래프로 그리다 보면 흥미로운 사실들이 발견되면서 점점 빨려들어(?)가는데,
아래 두가지를 염두하고 있으면 이 단계를 효율적으로 진행할 수 있을 것이다.

A. 분석의 목적을 항상 염두에 두자.

데이터 탐색은 기본적으로 끝이 없는 작업이다. 현실에서 분석하게 되는 데이터들은 다양한 변수들을 가지고 있는데,
각 변수들의 조합, 범주형 변수가 있을 경우 범주 내에서의 조합, 범주형 변수 끼리의 조합 등등 목적없이 파게 되면 끝없이 팔 수 있는 것이 탐색적 데이터 분석이기 때문에, 분석의 목적이 가설 수립인지, 특정 변수들 간의 관계 파악인지, 트렌드 파악인지를 항상 머릿속에 가지고 분석을 진행하는 것을 추천한다.

변수의 갯수가 많을 경우 데이터 탐색을 위해 그리게 되는 Plot도 늘어나게 된다. 흥미로운 Plot을 발견한 경우 해당 그래프를 다시 생성할 수 있도록 어떤 조건에서 그러한 Plot을 그리게 됬는지를 확인하자.

이 단계에서 주로 사용되는 그래프는 Scatter plot, Bobble chart 시계열 차트 등이 있다.

3. Inferential analysis
샘플 – 모집단 간의 관계를 탐구하는 것이 이 분석 유형의 목적이다.
샘플에서 얻어낸 정보가 모집단에도 적용될 수 있는지를 검토하는 것인데, 이는 자원이 한정되어 있어 샘플 크기를 무한정 늘릴 수 없기 때문에 발생하는 일반적인 문제를 해결하기 위한 분석 유형이다.
“95%의 확률로 모집단의 평균 점수는 80~85점 사이라고 말할 수 있다” , “그룹 A의 성적이 그룹 B보다 유의미하게 높았다”는 식의 결론이 Inferential analysis의 결과 이다.

4. Predictive analysis

머신 러닝(Machine learning), 의사결정나무(Decision Tree) 등 다양한 통계적 기법을 사용하여 미래 혹은 발생하지 않은 어떤 사건에 대한 예측을 하는 것이 Predictive analysis의 주요 목표이다.
“왜” 보다는 “정확한 예측”을 하는 것이 주요 관심사이기 때문에, 특정한 설명 변수가 어떤 매커니즘으로 목표 변수에 영향을 미치는 가에 대한 설명력은 약하다.

예를 들어 금연 성공률과 여러가지 설명 변수들 간의 관계를 분석한다고 가정 하자.
Causal analysis의 목표가 금연 성공률에 영향을 끼치는 변수는 금연 방법 (그냥 끊기, 약물치료, 상담치료, 약물/상담 일반적인 기술적 분석 지표 병행) 및 흡연 기간이다라는 “관계”를 밝혀내는 것이라면,
Predictive analysis의 목표는 직관적으로 금연과 관계 있는 요소 뿐 만 아니라 나이, 직업, 키, 몸무게, 거주 지역 등 사용가능한 변수들을 모두 활용하여 모델의 “예측력”을 높이는 것이다.

최근 Predictive analysis에서 좀 더 나아간 Prescriptive analysis도 주목 받고 있는데,
이 유형의 분석은 예측 모델을 기반으로 어떤 의사결정을 해야 하는지를 “처방”하는 것이 주요 목적이다.
예측 모델 속에 여러 의사 결정 옵션을 변수로 포함시켰다고 보면 이해가 쉬울 것 같다.
Prescriptive model은 어떤 의사 결정을 하느냐에 따라 변하는 결과를 예측해 주기 때문에 이러한 분석을 통해 최적화된 의사 결정을 할 수 있다.

2000년대 초중반 까지 유행했던 Scenario analysis와 유사한 점도 있지만,
Scenario analysis가 비즈니스 인싸이트에 기반하여 만든 정성적인 시나리오를 기반으로 미래를 예측하고 행동 옵션을 제시했다면,
최근의 Prescriptive analytics는 철저하게 수학 모델에 기반하고 있다는 점, 행동 옵션도 모델에 포함시켜 미래를 예측 한다는 점이 차이라고 볼 수 있다.

5. Causal analysis

독립 변수와 종속 변수 간의 인과관계가 있는지 여부를 확인하기 위한 분석이다.
Causal analysis의 특징 중 하나는 실험을 통해 수집된 데이터를 대상으로 한다는 점이다.
주로 독립 변수를 실험대상에 랜덤하게 할당한 후, 그룹 간 실험 전/후의 종속 변수의 변화를 관찰하여 실험 데이터 수집이 이루어 진다.
과거의 단순 관찰 데이터(Observational data)로는 Confounding variable이 있을 가능성을 배제할 수가 없으므로, 인과 관계 여부를 명확하게 밝혀 낼 수가 없기 때문이다.

최근 자주 언급되는 A/B test도 이러한 데이터 수집 방법의 하나라고 볼 수 있다.

선형Regression이 가장 많이 사용되는 분석 일반적인 기술적 분석 지표 방법이며, 변수가 여러개일 경우 Multi variable regression, 변수가 범주형일 경우 Logistics regression을 사용한다.

6. Mechanistic analysis

독립 변수가 어떤 매커니즘으로 종속 변수에 영향을 미치는 지를 분석하는 것으로, 위 6가지 유형 중 가장 노력이 많이 필요한 분석 유형이다.
Causal analysis의 목적이 독립 -종속 변수 간의 “인과 관계 여부”를 밝혀내는 것이었다면,
Mechanistic analysis의 목적은 이에 더해 어떠한 독립 변수가 어떠한 작용을 통해 독립 변수에 그러한 영향을 미치는 지를 이해하는 것이다.
Causal analysis와 동일하게 실험 데이터를 분석 대상으로 한다,


0 개 댓글

답장을 남겨주세요