index="kospi" earliest=-180d
| eval k_code = code
| rex field=code "^(?<code>\d+).KS"
| lookup kospi_200 code OUTPUT name
| where name = "SAMSUNG ELEC"
| sort _time
| table _time, Close
| predict Close
종가 기준 예측 가격을 확인
2020-10-01 ~ 2020-12-31 까지의 기록을 바탕으로 2021-01-04까지의 예측값을 보여줌
index="kospi" code="005930.KS" | sort _time
실습 시점이 한참 나중이라 원본 코드의 일부를 수정
종가 기준
holdback : 모든 데이터를 통한 학습이 아닌 전체 데이터의 일부만을 가지고 학습을 실행. 여기선 100개 좀 안되는 데이터 중 1/4 정도를 학습 데이터로 사용함.
실험을 반복하면서 좋은 분석 방식을 가져오자
좋은 실험 방식을 채택하고 결과를 저장
내가 저장한 실험모델이 등록된 것을 확인 가능
"검색에서 열기"를 클릭하면 검색창에 해당 모델의 작동 입력코드가 나오지만 보완 필요
index="kospi" earliest=-180d code="005930.KS"
| sort _time
| predict "Close" as prediction algorithm=LLT holdback=25 future_timespan=30 upper95=upper95 lower95=lower95
| `forecastviz(30, 25, "Close", 95)`
machin learning toolkit에서 쓰던 문구 그대로 stock app 에서 사용하면 에러가 난다
index="kospi" earliest=-180d code="005930.KS"
| sort _time
| table _time , Close
| predict "Close" as prediction algorithm=LLT holdback=25 future_timespan=30 upper95=upper95 lower95=lower95
| `forecastviz(30, 25, "Close", 95)`
수정된 코드
나의 자산 대시보드에 추가하고 holdback 영역 편집(보기 좋게 하기 위해)
검색 명령어를 수정한 코드
index="kospi" earliest=-180d
| eval k_code = code
| rex field=code "^(?<code>\d+).KS"
| lookup kospi_200 code OUTPUT name
| where name = "$stock_code$"
| sort _time
| table _time, Close
| predict "Close" as prediction algorithm=LLT future_timespan=5 upper95=upper95 lower95=lower95
| `forecastviz(5, 0, "Close", 95)`
<row>
<panel depends="$stock_code$" id="panelRefresh">
<html>
<div><button id="reset_tokens" class="btn btn-primary">HIDE</button></div>
</html>
</panel>
</row>
코드 추가
hide 버튼 추가됨
vi /opt/splunk/etc/apps/stock/appserver/static/reset_tokens.js
파일 편집
// 필요한 스플렁크 자바스크립트를 import 한다.
require([ 'jquery', 'splunkjs/mvc/simplexml/eventhandler' ],
// 호출되는 함수
function( $, EventHandler) {
// 원하는 소스를 추가한다.
// reset_tokens 라는 ID를 찾아서(새로 만든 버튼) 클릭 이벤트를 추가한다.
$('#reset_tokens').on("click",function()
{
// stock_code 토큰을 리셋해준다.
EventHandler.unsetToken("stock_code");
});
});
가이드에 따라 진행하더라도 캐시때문에 안될 경우가 있다. "http://[mysplunkIP]:8000/ko-KR/_bump" 해당 주소로 이동하여 Bump Version 을 올린 후 시도해 보면 되기도 한다.
단, 모든 가이드를 충실히 이행했을 때만, 이것도 안되면 리눅스를 껐다 켜보자