Community라이팅 & 에디팅github.com

TqSdk 트레이딩 및 데이터

TqSdk Python 워크플로우(업데이트 루프, 시장 데이터, 주문, 포지션, 계정 등)를 설명, 구현 또는 디버깅합니다. TqSdk 관련 질문에 실제 API, 문서 및 예제로 답변합니다.

TqSdk 트레이딩 및 데이터란 무엇인가요?

이 스킬은 TqSdk(TqApi, TqAuth 등)를 사용하는 개발자와 트레이더를 위해 설계된 전문 도우미입니다. `wait_update()` 및 `is_changing` 업데이트 루프의 작동 방식, 선물 및 주식 시장 데이터(K-라인, 틱, 호가) 검색, `DataDownloader`를 통한 과거 데이터 다운로드, 계정 유형(`TqKq`, `TqAccount`, `TqSim` 등) 선택 및 다중 계정 관리, 계정/포지션/주문/체결 정보 조회, 각 필드의 의미, 주문 제출 및 취소, `TargetPosTask` 및 `TargetPosScheduler`를 이용한 목표 포지션 관리, `TqScenario`를 통한 증거금/리스크 시나리오 분석, 실제 계정 증거금율 조회, 증거금 및 리스크 비율 계산, 시뮬레이션 및 백테스트, 그리고 일반적인 TqSdk 오류 해결을 포괄합니다. 각 질문에 대해 가장 관련성 높은 참조 문서(예: 업데이트 루프, 시장 데이터, 계정 유형 매트릭스 등)로 라우팅하여 최소한의 실행 가능한 코드 조각과 명확한 설명을 제공합니다. 선물과 주식 워크플로우를 구분하고, `TqScenario` 사용 시 증거금율 출처를 명시하며, 거래소별 청산 규칙을 존중하는 등 핵심 규칙을 따릅니다. 주요 플랫폼은 TqSdk 기반 애플리케이션(터미널, 봇, 백테스트 등)입니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/shinny-xuyida/tqsdk-agent-skills/tree/main/skills/tqsdk-trading-and-data

Installed? Explore more 라이팅 & 에디팅 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

TqSdk 트레이딩 및 데이터은(는) 무엇을 하나요?

이 스킬을 사용하여 저장소의 실제 API, 문서 및 예제로 TqSdk 질문에 답변하세요. 최소한의 실행 가능한 코드 조각을 선호하고, 선물과 주식 동작을 분리하며, 사용자 문제가 wait_update()에 의존할 때마다 업데이트 루프를 명시적으로 설명하세요.

먼저 요청을 라우팅하세요

사용자 질문에 필요한 참조만 읽으세요.

  1. wait_update, is_changing, deadline, 비동기 업데이트 알림, Jupyter 주의사항 또는 백테스트 진행 관련 질문이면 references/wait-update-and-update-loop.md를 읽으세요.
  2. get_quote, get_kline_serial, get_tick_serial, 계약 검색, 심볼 메타데이터 및 DataDownloader 관련 질문이면 references/market-data.md를 읽으세요.
  3. TqAccount, TqKq, TqKqStock, TqSim, TqSimStock, OTG 계정 클래스 및 TqMultiAccount 관련 질문이면 references/account-type-matrix.md를 읽으세요.
  4. 계정, 포지션, 주문 및 체결 게터와 다중 계정 게터 패턴 관련 질문이면 references/accounts-and-trading.md를 읽으세요.
  5. TqScenario, 실제 계정 증거금율 조회, 증거금 점유 계산, 리스크 비율 시나리오 분석, 제한된 내장 증거금 할인 규칙 관련 질문이면 references/scenario-and-margin.md를 읽으세요.
  6. insert_order, cancel_order, TargetPosTask, support_open_min_volume, TargetPosScheduler 및 고급 실행 헬퍼 관련 질문이면 references/order-functions-and-position-tools.md를 읽으세요.
  7. 사용자가 Quote, K-라인 또는 틱 행, Account, Position, Order, Trade 또는 그 주식 변형의 필드 의미를 묻는다면 references/object-fields.md를 읽으세요.
  8. 로컬 시뮬레이션, 퀵 시뮬레이션, 주식 시뮬레이션, 백테스트 및 교차 계정 백테스트 제한 관련 질문이면 references/simulation-and-backtest.md를 읽으세요.
  9. 사용자가 일반적인 TqSdk 오류, 혼란스러운 동작 또는 예외 메시지를 묻는다면 references/error-faq.md를 읽으세요.
  10. 저장소 기반 예제나 문서 페이지를 모방하려면 references/example-map.md를 읽으세요.

핵심 규칙

  1. get_* 결과를 스냅샷이 아닌 라이브 참조로 취급하세요. wait_update() 중에 새로고침된다고 설명하세요.
  2. 사용자가 데이터 누락, 필드 오래됨, 주문이 클라이언트를 떠나지 않음 또는 TargetPosTask가 작동하지 않는 문제로 혼란스러워할 때마다 wait_update()를 설명하세요.
  3. 선물과 주식 워크플로우를 구분하세요:
    • 선물 계정 및 객체는 Account, Position, Order, Trade를 사용합니다.
    • 주식 계정 및 객체는 SecurityAccount, SecurityPosition, SecurityOrder, SecurityTrade를 사용합니다.
    • 주식 거래는 offset을 사용하지 않으며, TargetPosTask는 주식 거래용이 아닙니다.
  4. 코드를 작성하기 전에 계정 유형을 선택하세요. 사용자가 실제로 해당 계정 모드를 필요로 하지 않는 한 기본값으로 TqKq 또는 TqAccount를 사용하지 마세요.
  5. 다중 계정 모드에서는 게터와 거래 호출에 account=를 전달하거나 계정 객체 자체의 get_account, get_position, get_order, get_trade를 사용하세요.
  6. 현재 시장 예제의 경우 만료된 계약을 피하세요. 계약 검색 API 또는 메인 계약 심볼을 선호하세요.
  7. 사용자가 필드 의미를 묻는 경우, 가장 작은 관련 필드 집합부터 설명하고 객체가 선물인지 주식인지 말하세요.
  8. 사용자가 긴 과거 기간을 요청하는 경우, get_kline_serial을 무제한 기록 API인 척하는 것보다 DataDownloader를 선호하세요.
  9. 사용자가 고급 실행을 요청하는 경우, 먼저 공개 헬퍼를 선호하세요:
    • 목표 순 포지션: TargetPosTask
    • 대략적인 완료가 허용될 때 거래소 최소 개장 크기 규칙이 있는 계약에만 TargetPosTask(..., support_open_min_volume=True)
    • 예정된 실행을 위한 TargetPosScheduler와 tqsdk.algorithm의 twap_table 또는 vwap_table
    • InsertOrderTask와 InsertOrderUntilAllTradedTask는 내부 또는 고급 헬퍼로 언급하고, 기본 답변으로 사용하지 마세요.
  10. TqScenario는 실시간 주문 제출이 아닌 동기식 시나리오 분석(증거금 및 리스크)에 사용하세요. 선물 전용, 단일 계정이며 각 호출 직후 시나리오 스냅샷을 업데이트합니다.
  11. 모든 TqScenario 답변에서 증거금율 출처를 설명하세요:
    • account=None 또는 TqSim()은 Quote 증거금 데이터를 사용합니다.
    • TqAccount(...) 또는 TqKq()는 계정별 증거금율을 동기식으로 조회하고 조회에 실패하면 Quote 증거금으로 폴백할 수 있습니다.
  12. 증거금 할인을 보수적으로 처리하세요. 단계별 시나리오 작업에 하나의 TqScenario 객체를 재사용하고, TqSdk가 모델링한 제한된 내장 규칙 이상의 브로커별 특혜 규칙을 약속하지 마세요.
  13. TqScenario에서 거래소별 청산 의미를 유지하세요. SHFE 또는 INE 선물의 경우, 가져온 포지션 스냅샷과 일관되게 CLOSE 대 CLOSETODAY를 유지하세요.

답변 스타일

  • 최상위 API는 tqsdk.__init__에서 임포트하는 것을 선호하세요. API가 하위 모듈 아래에 문서화된 경우 tqsdk.tools 또는 tqsdk.algorithm과 같은 공식 하위 모듈 경로를 사용하세요.
  • 광범위한 의사 코드보다 짧고 정확한 코드 블록을 선호하세요.
  • 사용자가 다음에 호출해야 할 정확한 API를 명명하세요.
  • 실제 거래, 퀵 시뮬레이션, 로컬 시뮬레이션, 주식 시뮬레이션 또는 백테스트에서 동작이 다른 경우 명시적으로 말하세요.
  • 답변이 일반적인 함정에 의존하는 경우, 예제에 묻지 말고 함정을 직접 진술하세요.
  • 답변이 TqScenario를 사용하는 경우, positions에 어떤 스냅샷이 들어가는지, init_balance에 어떤 잔액이 들어가는지, 결과가 호가 증거금에서 왔는지 계정별 증거금율에서 왔는지 말하세요.

관련 스킬