콘텐츠로 이동

QuantiqDSL 문서

QuantiqDSL은 자동매매 전략 작성용 DSL입니다. Python과 유사한 문법으로 전략을 작성하되, 샌드박스에서 안전하게 실행됩니다.

Quantiq 자동매매 흐름

현재 cloud landing과 시작 가이드는 아래 흐름을 기준으로 안내합니다.

  1. 스크리닝: 종목 지정 또는 HTS 조건검색(검색식)으로 감시 후보를 수집합니다.
  2. 위험종목 필터링: 관리종목, 거래정지, 급격한 이상 종목 같은 기본 제외 대상을 먼저 걸러냅니다.
  3. 스크립트 의사결정: 스튜디오에서 작성한 전략 스크립트가 진입/청산 조건을 평가합니다.
  4. 리스크 검사: 계좌, 전략, 포지션 한도를 다시 확인해 과도한 실행을 막습니다.
  5. 주문 실행: 검사를 통과한 주문만 사용자의 PC에서 동작하는 runtime을 통해 브로커 경계로 전달됩니다.
  6. 운영/원격 확인: 운영 탭과 텔레그램 알림을 통해 상태를 확인하고, 필요한 경우 원격 제어를 이어갑니다.

즉, Quantiq cloud는 전략/스크립트와 운영 메타데이터를 관리하고, 실제 주문 전송과 민감정보 처리는 로컬 runtime 경계에서 수행하는 구조를 전제로 합니다.

오픈 베타 범위

  • 현재 landing에서 소개하는 기능은 오픈 베타 기준 현재 노출 중인 운영 흐름입니다.
  • 기능별 세부 구현 범위는 문서 본문과 실제 화면에서 확인해야 합니다.
  • 일부 기능은 계정/환경/연동 상태에 따라 제한되거나 부분적으로 제공될 수 있습니다.

현재 안내하는 실행 환경

  • 로컬 runtime은 Windows / Mac을 지원합니다.
  • 브로커는 한국투자증권 KIS Open API를 지원합니다.
  • 브로커/실행 환경, 보안 정책, 설치 상태에 따라 실제 사용 가능 범위는 달라질 수 있습니다.
  • 원격 알림/원격 제어 같은 cloud 연계 기능은 별도 연동 상태가 필요합니다.

시작 방법

코딩 경험에 따라 세 가지 경로로 시작할 수 있습니다. 자세한 안내는 온보딩 경로를 참고하세요.

  1. 커뮤니티 전략 가져오기 — 다른 사용자가 공유한 전략을 가져와 바로 모의투자에 적용합니다. 코딩이 필요 없습니다.
  2. AI에게 아이디어 설명 — 매매 아이디어를 자연어로 설명하면 AI가 DSL 코드 초안을 생성합니다.
  3. 직접 코드 작성 — 자동완성이 지원되는 에디터에서 DSL로 전략을 직접 작성합니다.

ChatGPT GPTs 체험 진입 surface

cloud web surface에는 필요 시 ChatGPT GPTs 체험 진입 링크가 함께 노출될 수 있습니다.

  • 이 링크는 cloud landingdocs/help surface에서 보일 수 있습니다.
  • anonymous 또는 FREE 사용자는 landing에서 더 눈에 띄는 CTA로 보게 될 수 있습니다.
  • BASIC/PRO 사용자는 runtime AI가 canonical path이므로, GPTs 체험 링크를 docs/help 맥락의 보조 진입으로 보게 되는 구성이 기본입니다.
  • 현재 공식 GPTs 체험 entry는 Quantiq Strategy Trial 입니다.
  • 이 surface는 CHATGPT_GPTS_TRIAL_URL 같은 server config를 override 하지 않으면 위 공식 entry를 기본값으로 사용합니다.
  • GPTs 체험은 아이디어 정리와 제한된 DSL 초안용이며, 실제 백테스트/에디터 반영/실행 제어는 runtime Studio를 사용해야 합니다.
  • GPTs 체험 표면에는 runtime 미연동, 백테스트 불가, 적용 불가 성격을 함께 고지해야 합니다.

안전장치

QUANTIQ는 종목·전략·계좌 3단계 리스크 관리를 제공합니다.

  • 종목별: 개별 종목의 손절/익절 한도
  • 전략별: 전략 단위 일일 손실 제한
  • 계좌: 계좌 전체 일일 손절 한도

또한 전략 실행과 주문은 사용자의 로컬 PC에서 직접 처리되며, 계좌 비밀번호와 API 키는 클라우드에 저장되지 않습니다. 수익을 보장하지 않으며, 모의투자로 충분히 검증한 뒤 실전 적용을 권장합니다.

빠른 예제

version("1.0")
description("골든크로스")

c = chart("1D")
fast = ta.sma(c.close, 5)
slow = ta.sma(c.close, 20)

if fast.cross_up(slow):
    buy(tag="골든크로스")
elif fast.cross_down(slow):
    sell(tag="데드크로스")
else:
    hold()

학습 시작점

핵심 문서

출시 예정

  • AI 어드바이저 — 전략 스크립트에서 AI에 직접 질의하여 매매 판단을 보조합니다. 자세히

현재 구현 메모

  • warm_up 변수는 현재 DSL 컨텍스트에 주입되지 않습니다.