Signal broker · Xpikes app · x-folio

예측 시그널을 모으고,
맞은 것만 과금합니다.

spikes는 시그널을 만드는 채널과 시그널을 쓰는 사람을 잇는 브로커입니다. 채널 서버가 보내는 예측을 실시간으로 받아 Xpikes 앱·API·x-folio 웹페이지로 내보내고, 나중에 실제값으로 정답이 확인된 시그널에만 ⚹Xpike 포인트를 차감합니다.

3소비 경로 · 앱 / API / x-folio
correct=yes과금 조건 단 하나
⚹1,000가입 시 웰컴 크레딧
SNDK · flash 20260830.223104.512 LIVE

개장 4분, 상방 flash 우세. 5분 내 +1.5% 도달 확률이 기준선을 넘었습니다.

up_flash0.72
dn_flash0.18
current_position+0.43
updnflatF[0..9] · 30s step
feetype paid · fee ⚹12 · model AM-ab sndk-flash.x ↗
How it works

채널이 만들고, spikes가 중계하고, 이용자가 고릅니다

시그널의 생산과 소비를 분리한 3층 구조입니다. spikes 서버는 시그널을 판단하지 않습니다. 검증하고, 저장하고, 내보내고, 정산할 뿐입니다.

Producers

채널 서버

  • 자산(ticker) 하나에 예측 모델 하나 = 채널 하나
  • JSON 시그널을 REST로 전송, 계정 키로 서명
  • 나중에 실제값이 나오면 과거 시그널의 correct를 스스로 보고
Broker

spikes 서버

  • 헤더 필수값 검사 — 빠지면 처리하지 않음
  • 10초 이상 지연된 시그널 폐기
  • 수집·배포 / 지갑 / 정합성 검사 / 백업이 각각 독립 프로세스
  • x-folio 웹서버 + 네임서버 내장
Consumers

Xpikes 앱 · API · x-folio

  • 앱: 푸시 + 진동/알림음, 채널 활성화로 수신
  • API: 내 컴퓨터가 최신 시그널을 직접 가져감 (초당 8회 한도)
  • x-folio: 브라우저에서 채널을 여러 개 동시에 펼쳐 봄
채널은 심사로 만들어집니다이용자가 신청하고 관리자가 검토 후 생성합니다. 채널 품질이 곧 서비스 품질이기 때문입니다.
기기 수는 요금과 무관합니다같은 시그널을 폰과 API로 동시에 받아도 소비는 한 번으로만 기록됩니다.
지갑이 비면 유료 시그널은 멈춥니다잔액 ⚹0이면 유료 채널 시그널은 전송되지 않습니다. 빚이 생기지 않습니다.
Three ways to read a signal

같은 시그널, 세 가지 표현

시그널은 텍스트(signal-box), 막대차트(chart-box), 그리고 한 장의 웹페이지(x-folio)로 표현됩니다. 앱은 이 표준 표현만 씁니다.

signal-box

접으면 요약, 펼치면 평가값

접힌 모드는 summary와 핵심 key:value 3개만. 펼치면 accuracy·err·sim 같은 평가 정보와 chart-box 버튼이 나타납니다. 같은 ticker의 채널들을 한 화면에 모아 볼 수 있습니다.

summary▸ 접힘
up_flash 0.72dn_flash 0.18
accuracy 0.71 · mae 0.42▾ 펼침
chart-box

key는 x축, value는 y축

시그널에 담긴 색상(up-color, dn-color)을 그대로 씁니다. 앨범처럼 2열 격자로 최대 20개 채널의 차트를 한 탭에 띄우고 계속 갱신받을 수 있습니다.

x-folio

채널마다 한 장의 페이지, 하나의 이름

작은 폰 화면 대신 브라우저 탭 여러 개로 채널을 동시에 봅니다. 각 페이지는 이름.x 네임으로 불리고, 앱 검색창이나 signal-box에서 바로 열립니다.

sndk-flash.x실시간 접속 37
mu-spike2.x실시간 접속 12
hynix-open60.x실시간 접속 58
⚹ Xpike point

틀린 예측에는 한 푼도 내지 않습니다

유료 채널의 시그널은 받을 때가 아니라, 실제값이 확인되어 채널이 correct: yes를 보고한 뒤에만 채널이 정한 fee만큼 차감됩니다. 이 규칙은 단순하고, 코드도 단순하게 유지합니다.

포인트 단위 Xpike, 기호 ⚹

원화로 구매하며 현금 환불은 없습니다. 가입 시 ⚹1,000 웰컴 크레딧이 지급됩니다.

=
잔액은 항상 맞아야 합니다

이용자·채널·시스템 지갑의 합계를 매시간 독립 프로세스가 검산하고, 결과를 관리자 콘솔에 표시합니다.

½
수익은 채널과 나눕니다

차감된 fee는 share ratio(기본 0.5)로 채널 지갑과 시스템 지갑에 나뉩니다. 채널의 수익은 곧 채널 소유자의 잔액입니다.

사람이 읽을 수 있는 백업

계정·시그널·포인트 이력을 매시간 CSV로 별도 폴더에 백업하고 최근 10개만 유지합니다. 지갑 값은 비대칭키로 암호화됩니다.

내 포인트 이벤트 — 앱에서 보이는 것과 같습니다
tik채널판정
0830.223104SNDK · flash대기
0830.222604SNDK · flashcorrect−12
0830.222104MU · spike2incorrect0
0830.221604MU · spike2correct−8
0830.221104SNDK · flashincorrect0
0830.090000구매 (KRW)완료+500
잔액⚹1,480
x-folio — “xpike page”

한 장의 종이처럼 닫힌 페이지

아래는 채널 하나의 x-folio입니다. 검색창의 이름을 바꾸면 같은 틀 안에서 다른 채널로 이동합니다.

X folio

chart box

accuracy · 7d0.71correct 47 / 66
mae0.42errmetric mae
접속 · 구독37구독자 212 · 누적 클릭 8,940

chart history box

accuracymae접속N=40

signal message box

UP개장 4분, 상방 flash 우세. up 0.72 / dn 0.1822:31:04
FLAT양방향 flash 약세, 관망. up 0.31 / dn 0.3522:30:34
DN하방 spike 감지, 기준선 −0.8%. dn 0.6622:30:04

게시판

sndk_owner오늘부터 flash 후반 태깅(±5초창) 적용. mae 개선 여부는 주말에 공유합니다.08.30
jh.kim22:26 시그널 correct 처리 확인했습니다. 정산 내역과 일치.08.30

채널 설명

SNDK 개장 후 60분 동안 1~2분 단위 상·하방 flash 확률을 예측합니다. 예측 시점에서 5분 내 ±1.5% 도달 여부로 정답을 판정하며, 판정 결과는 후속 시그널의 analysis_on에 담아 보고합니다. 유료 채널 · fee ⚹12 · 최소 간격 30초.

네임 규칙문자·숫자와 . - _ ~만 허용, 끝에 .x, 최대 255바이트, 중복 불가.
유료 채널링크를 열면 로그인 한 번. 같은 브라우저 세션 안에서는 다시 묻지 않습니다.
이용 통계누적 클릭과 실시간 접속 수가 앱의 채널 정보와 관리자 콘솔에 함께 표시됩니다.
For producers

예측 모델이 있다면, 채널을 여세요

채널은 앱에서 신청하고 관리자가 심사해 생성합니다. 만들어진 뒤에는 정해진 JSON 헤더만 지키면 어떤 모델이든 시그널을 보낼 수 있습니다.

앱에서 신청

채널명, 대상 ticker, 설명(≤10K), 정답 판정 규칙, fee, 최소 시그널 간격, 샘플 시그널을 제출합니다.

관리자 심사·생성

관리자 콘솔에서 요청을 검토하고 채널 ID와 x-folio 네임을 부여합니다.

시그널 전송

계정의 비밀키로 서명한 JSON을 REST로 보냅니다. 헤더가 빠지면 처리되지 않습니다.

정답 보고 · 정산

실제값이 나오면 analysis_oncorrect를 보고합니다. yes일 때만 fee가 차감되고 share ratio로 채널 지갑에 쌓입니다.

// 시그널 한 건 = 채널 하나의 이벤트 하나
{
  "channel-id":   "ch-sndk-flash-01",
  "channel-ip":   "203.0.113.7",
  "asset-ticker": "SNDK",
  "tikstringkey": "20260830.223104.512",
  "signal-uuid":  "8f1c…",
  "signaltype":   "FLASH",
  "signalvers":   "s0.v21.2",
  "feetype":      "paid",
  "modeltype":    "AM-ab",
  "display-chart":"yes",

  "summary": "개장 4분, 상방 flash 우세",
  "F": [0.12, 0.31, 0.58, 0.72, 0.61, …],
  "up_flash": 0.72, "dn_flash": 0.18,
  "up-color": "red", "dn-color": "blue",

  // 과거 시그널 평가 (옵션)
  "analysis_on": "20260830.222604.019",
  "correct": "yes",  "charge": "yes",
  "accuracy": 0.71, "err": 0.42, "errmetric": "mae"
}

헤더는 전부 필수입니다. channel-id, channel-ip, asset-ticker, tikstringkey, signal-uuid, signaltype, signalvers, feetype, modeltype, display-chart 중 하나라도 없으면 시그널은 버려집니다.

tik은 사람이 읽는 시각입니다. ymd.hms.ms 19자. 파일명과 테이블 키에 그대로 쓰여 관리자가 눈으로 추적할 수 있습니다.

본문은 채널이 정합니다. 시그널 타입별로 key:value / key:list를 자유롭게 넣고, 앱은 그것을 표준 signal-box와 chart-box로 그립니다.

서버 스택
  • Ubuntu · Rust 서버 모듈, 독립 프로세스 구성
  • 관리자 콘솔은 웹, 이용자 기능은 iOS/Android 앱 전용
  • 인바운드·아웃바운드 모두 계정별 비대칭키로 서명·암호화