파인스크립트 기본반
분류 기초강좌

연산자, 함수, 변수

페이지 정보

본문

스크립트를 구성하는 문법적 요소에는 크게 연산자, 함수, 변수가 있다고 할 수 있습니다.

우리가 쓰는 언어에 비유해보자면, 연산자는 문장 부호나 조사, 함수는 동사, 변수는 명사라고 할 수 있겠네요.

하지만, 말이 그렇다는 것이지 굳이 우리의 언어와 비교할 필요도 딱히 없습니다.


파인 에디터에서 도움말 > 파인 스크립트 레퍼런스(팝업)을 눌러봅시다.


1bd2136e7de1117ab48e137b09249d73_1588520998_49.png
모를때마다 수시로 펼쳐보는 사전이 나왔습니다.

왼쪽 카테고리에 크게 3가지가 보입니다.

랭귀지 오퍼레이터(연산자), 빌트인 변수(내장 변수), 빌트인 함수(내장 함수)가 있네요.

빌트인(내장)이라고 하는 것은 이미 파인 스크립트에서 정의해 놓은 변수와 함수라는 것입니다.

레퍼런스(사전)에 나와있는 그대로 쓰면 됩니다.


레퍼런스에 없는 변수와 함수를 만들어서 쓸 수도 있는데요.

이것은 사용자 정의 변수, 사용자 정의 함수라고 부릅니다.

여러분들이 정의한 변수와 함수니까 당연히 레퍼런스에는 안나오겠죠?



[랭귀지 오퍼레이터(연산자)]

연산자에는 사칙연산 부호와 등호, 부등호와 같은 산술 연산자와 논리 관계를 나타내는 논리 연산자가 있습니다.


간단한 코드가 있습니다.

a = 1 + 2

a는 변수, =와 +는 연산자, 1과 2는 숫자입니다.

이 코드는 a가 1+2와 같다는 것이 아닙니다.

1과 2를 더하여 a에 대입하라는 뜻이됩니다.

=는 =를 중심으로 우변 값을 좌변으로 대입하라는 연산자가 됩니다.

그러면 이 다음줄에서 a는 3의 값을 갖게 됩니다.



[함수]

함수는 어떤 기능을 수행합니다.

형태는 함수 이름(인자1, 인자2, ...) 이렇게 함수 이름 뒤에 인자들이 괄호에 쌓은 형태가 됩니다.

기본적으로 내장 함수를 많이 이용하게 되실 겁니다.


파인 스크립트 내장 함수의 대표적인 것은 차트에 값을 그려주는 plot이 있습니다.


a = 1 + 2
plot(a)

앞서 쓴 코드 다음줄에 plot(a)를 써 넣으면 차트에는 3에 해당하는 값이 출력됩니다.

plot(a)라는 것은 a값을 차트에 나타내라는 뜻이 됩니다.

a에는 3이라는 값이 들어 있을테니 차트에는 3값이 출력되겠지요.


1bd2136e7de1117ab48e137b09249d73_1588522185_66.png
스크립트를 작성하고 차트에 넣기를 눌러보니 3에 해당하는 부분에 선 형태로 그래프가 그려진 것을 볼 수 있습니다.


모든 함수에는 각각의 정의가 있습니다.

plot(series, title, color, linewidth, style, trackprice, transp, histbase, offset, join, editable, show_last, display)

이것이 plot 함수의 정의 입니다.


매끄럽지는 않습니다만, 한글로 굳이 표현해보면

차트에 값을 나타내라(나타낼 값, 이름, 색, 선두께, 스타일, 가격선, 투명도, 베이스 포인트, 간격, 조인, 수정가능, 바 갯수, 디스플레이)

이렇게 됩니다.


괄호안에 있는 것은 함수의 인자라고 하는데, plot 함수는 13개의 인자를 갖습니다.

13개의 재료를 plot이라는 냄비에 넣고 달달 볶으면 차트에 그림이 짠! 하고 나타나는 것이죠.

13개 인자를 모두 사용자가 입력할 수도 있는데, 몇개의 인자는 이미 기본값이 있어서 꼭 바꿀 필요가 없다면 안써줘도 됩니다.

하지만, 기본값이 없는 인자는 사용자가 반드시 입력해줘야합니다.


plot은 첫번째의 series인자가 필수 인자이므로 반드시 지정해줘야합니다.

plot이라는 것이 어떤 값을 차트에 그려주는 기능을 하는데,

그 어떤 값이라는 것을 사용자가 지정해주지 않으면 뭘 그려야할지 모르기 때문에 에러가 발생합니다.

필수 인자가 아닌 이름이나 색, 선 두께 같은건 아무 이름이나 아무 색, 아무 선 두께로 나타내줘도 상관이 없는 것이지요.


내장 함수는 파인 에디터상에서 남색으로 표현되므로 쉽게 구분할 수 있습니다.



[변수]

변수는 변하는 수라는 뜻인데, 그냥 쉽게 어떤 값이 대입되는 놈이라고 생각하면 좋습니다.


앞선 코드에서 a가 변수가 됩니다.

a는 파인 스크립트에 내장된 변수는 아니고, 우리가 임의로 만든 변수이기 때문에 사용자 정의 변수가 됩니다.


대표적인 내장 변수로는 close가 있습니다.

우리말로 종가입니다.

지난 봉에서는 종가가 되고, 진행중인 봉에서는 현재가가 되겠죠.


a = close + 2
plot(a)

좋은 예제는 아닙니다만, 간단한 예제를 보죠.

앞선 코드에서 1을 close로 바꿔봤습니다.

a에는 종가에서 2를 더한 값이 들어가고, 그 값이 출력되는 스크립트입니다.


1bd2136e7de1117ab48e137b09249d73_1588528173_92.png
스크립트를 작성하여 바로 차트에 넣어봤습니다.

파란색 그래프가 생겼는데, 이 그래프의 값은 종가에 2를 더한 값입니다.

실제 종가와 비교해보면 7254에서 2를 더한 7256값이 표시된 것을 볼 수 있습니다.


close와 같은 내장 변수는 이미 값이 정해져있기 때문에 그 값을 고쳐서 쓸 수는 없습니다.

close = 200

종가에 200을 넣고 싶다고 해서 이렇게 할수는 없는 것입니다.


그래서 사용자 정의 변수를 쓸때는 내장 변수 이름과 겹치지 않도록 이름을 정해주는 것이 좋습니다.

이는 함수도 마찬가지로, 사용자 정의 함수를 쓸때는 내장 함수와 이름이 겹치지 않게 해야합니다.

프로그래밍 언어에 따라서는 사용자 정의 연산자를 쓸 수도 있지만, 일반적이지는 않고요.

파인 스크립트에서는 사용자 정의 연산자는 지원하지 않는것으로 압니다.


연산자와 내장 함수, 내장 변수에 어떤 것들이 있는지는 도움말 > 파인 스크립트 레퍼런스에서 찾아볼 수 있습니다.

공개되어 있는 스크립트에 어떤 내장 함수와 내장 변수가 쓰였는지 알아보고,

결과 값과 비교해보면서 각각이 어떤 기능을 했는지 추측해보면서 공부해볼 수도 있습니다.

관련자료

등록된 댓글이 없습니다.
전체 21건 / 1페이지

+ 최근글


+ 새댓글


통계