첨부 이미지
그림1
예스에서 Chaikin Money Flow (CMF)을 구현할 수 있는지요?
1.자금 흐름 승수 (MFM):
MFM = (종가−저가)−(고가−종가)/고가−저가
2.자금 흐름 거래량 (MFV):
MFV = MFM ×거래량
3. CMF:
첨부 파일 참조
​ 여기서 𝑁 은 기간 (보통 20 또는 21일)입니다.
해석:
CMF > 0: 매수 압력이 우세한 축적을 나타냅니다.
CMF < 0: 매도 압력이 우세한 분배를 나타냅니다.
참고로 CMF를 계산하는 Python 코드입니다
import pandas as pd
# 예제 데이터프레임: ['고가', '저가', '종가', '거래량']
data = {
'High': [125, 127, 130, 128, 131],
'Low': [120, 122, 123, 124, 126],
'Close': [124, 126, 129, 127, 130],
'Volume': [1000, 1100, 1200, 1300, 1400]
}
df = pd.DataFrame(data)
# 자금 흐름 승수 계산
df['MFM'] = ((df['Close'] - df['Low']) - (df['High'] - df['Close'])) / (df['High'] - df['Low'])
# 자금 흐름 거래량 계산
df['MFV'] = df['MFM'] * df['Volume']
# 3일 기간 동안의 Chaikin Money Flow 계산 (예제)
cmf_period = 3
df['CMF'] = df['MFV'].rolling(window=cmf_period).sum() / df['Volume'].rolling(window=cmf_period).sum()
print(df[['High', 'Low', 'Close', 'Volume', 'MFM', 'MFV', 'CMF']])
답변 1
예스스탁
예스스탁 답변
2024-06-26 14:42:11
안녕하세요
예스스탁입니다.
input : N(20);
var : MFM(0),MFV(0),CMF(0);
MFM = ((C-L)-(H-C))/(H-L);
MFV = MFM*V;
CMF = AccumN(MFV,N)/AccumN(V,N);
Plot1(CMF);
PlotBaseLine1(0);
즐거운 하루되세요
> 행복만땅 님이 쓴 글입니다.
> 제목 : 지표 부탁합니다
> 예스에서 Chaikin Money Flow (CMF)을 구현할 수 있는지요?
1.자금 흐름 승수 (MFM):
MFM = (종가−저가)−(고가−종가)/고가−저가
2.자금 흐름 거래량 (MFV):
MFV = MFM ×거래량
3. CMF:
첨부 파일 참조
​ 여기서 𝑁 은 기간 (보통 20 또는 21일)입니다.
해석:
CMF > 0: 매수 압력이 우세한 축적을 나타냅니다.
CMF < 0: 매도 압력이 우세한 분배를 나타냅니다.
참고로 CMF를 계산하는 Python 코드입니다
import pandas as pd
# 예제 데이터프레임: ['고가', '저가', '종가', '거래량']
data = {
'High': [125, 127, 130, 128, 131],
'Low': [120, 122, 123, 124, 126],
'Close': [124, 126, 129, 127, 130],
'Volume': [1000, 1100, 1200, 1300, 1400]
}
df = pd.DataFrame(data)
# 자금 흐름 승수 계산
df['MFM'] = ((df['Close'] - df['Low']) - (df['High'] - df['Close'])) / (df['High'] - df['Low'])
# 자금 흐름 거래량 계산
df['MFV'] = df['MFM'] * df['Volume']
# 3일 기간 동안의 Chaikin Money Flow 계산 (예제)
cmf_period = 3
df['CMF'] = df['MFV'].rolling(window=cmf_period).sum() / df['Volume'].rolling(window=cmf_period).sum()
print(df[['High', 'Low', 'Close', 'Volume', 'MFM', 'MFV', 'CMF']])