- 포럼
- 도움
- EMA의 지원
EMA의 지원
저자:
돼지, 제작: 2021-01-08 00:08:49, 업데이트: 2021-01-08 13:41:42
pine_ema ((src, 길이) =>
알파 = 2 / (길이 + 1)
합 = 0.0
sum:= na(sum[1])? sma(src, length) : 알파 * src + (1 - 알파) * nz(sum[1])
플롯 ((pine_ema ((close,15))
TV의 EMA 공식 sum:= na ((sum[1])? sma ((src, length)): alpha * src + (1 - alpha) * nz ((sum[1])
이 부분은 이해가 안되는데, 파이튼으로 번역해 줄 수 있나요? 감사합니다.
참고:
- df[close].ewm ((span=110,adjust = False).mean()
- talib.EMA ((np.array ((close), timeperiod=110)
이 테스트 결과는 TV와 일치하지 않습니다. 50보다 작은 확률은 동일합니다. 100보다 큰 확률은 동일하지 않습니다.
더 많은
마이케오자바스크립트의 ema 함수입니다. 자바스크립트의 ema 함수입니다. 자바스크립트의 ema 함수입니다. 자바스크립트의 ema 함수입니다.
마이케오함수 ema ((src, 길이가) {
var arr = [];
var sum = 0;
var alfa = 2 / (길이 + 1)
수 (이하 수)
if(i<길이-1) {
arr[i] = null;
수 += src[i];
♪ ♪
if(i==길이-1) {
arr[i] = (sum+src[i])/length
♪ ♪
다른 것
arr[i] = 알파 * src[i] + (1 - 알파) * arr[i-1]
♪ ♪
♪ ♪
arr 를 반환합니다.
♪ ♪
초목ewm 알고리즘은 ewm = alpha*close+(1-alpha) *ewm로 작성할 수 있습니다.
돼지。 현재는 exp=0.1을 수정하여 근사값을 얻었다。 감사합니다。
초목알고리즘은 매우 다르며, 몇 가지 미묘한 차이점이 있습니다. 예를 들어, 반복적인 방법을 사용하여 첫 번째 값을 어떻게 가져야하는지, 스스로 하나를 선택하면 실행됩니다.
돼지EWMA와 같은 결과가 나오지 않는 것 같습니다.
def EMA ((ps,period=5,exp=0.1)):
ewma=pd.Series (0.0,index=ps.index)
ewma[period-1]=ps[:period].mean ((()
for i in range (period, len (ps)):
ewma[i] =exp*ps[i]+(1-exp) *ewma[i-1]
return ewma