[기술적 분석] 지표 : 심리선 (PSY, PSL, Psychological Line)

반응형

 

  이번에는 과열, 과냉각 상태를 파악하는 데 사용되는 모멘텀 지표인 심리선(PSL, PSY, Psychological Line)에 대해 알아본다. 심리선은 아주 간단하게 계산되는데, 관찰 기간 내의 상승일의 비율을 백분율로 표시한다. 상승 분이나 저점 대비 현재 가격을 표시하는 게 아니고 상승여부에 따라 1씩 카운트를 하는 방식이라 관찰기간이 직전 10일이라고 했을 때 이중 7일이 상승하면 70으로 표시하는 방식이다. 지표는 아주 단순하지만 간단하게 종목의 추세와 모멘텀을 파악하는 데 사용할 수 있다. 단, 심리선의 값은 앞서 말했다시피 상승률은 반영하지 않으므로 관찰 기간 내내 소폭 상승한 종목과 하락한 적은 있으나 상승폭이 훨씬 큰 종목을 비교할 경우, 전자의 경우 더 큰 값을 보여주기 때문에 독자적으로 사용하기보다는 다른 모멘텀 지표를 보조하는 형태로 사용하는 게 좋다.

 

심리선 (PSY, PSL, Psychological Line) 보조 지표

반응형

 

  마지막으로 심리선 (Psychological Line) 트레이딩 뷰 파인 스크립트 소스와 pandas-ta 소스를 공유하며 마친다.

 

  • 심리선 (PSY, PSL, Psychological Line) 트레이딩 뷰 파인 스크립트 지표 소스
indicator(title="Psychological line", shorttitle="PSY", format=format.price, precision=4, timeframe="", timeframe_gaps=true)

count(lookback) =>
    int result = 0
    for i = 1 to lookback
        if close[i] > close[i+1]
            result += 1
    result

lengthInput = input.int(20, minval=1)
psy = count(lengthInput) / lengthInput * 100
clr = psy >= 50 ? color.green : color.red
p1 = plot(50, color=color.gray)
p2 = plot(psy, color=color.blue, title="PSY")
fill(p1, p2, color=clr)

 

  • 심리선 (PSY, PSL, Psychological Line) pandas-ta 소스
import pandas as pd
import pandas_ta as ta
import FinanceDataReader as fdr

data = fdr.DataReader('005930')
psl = ta.psl(close=data['Close'], length=12)
data = pd.concat([data, psl], axis=1)
data.dropna(inplace=True)
반응형