Coin Autopsy Journal

Beyond Indicators: 12 Decision Logics That Actually Make AI Agents Smarter

Most AI agents don't fail because the model is bad. They fail because the decision process is too simplistic.

Ada satu kesalahpahaman yang menurut saya masih cukup sering muncul ketika membahas AI agent.

Banyak orang langsung menghubungkan kualitas sebuah agent dengan model yang dipakai. Semakin besar modelnya, semakin panjang context window-nya, atau semakin canggih reasoning-nya, dianggap otomatis akan menghasilkan keputusan yang lebih baik.

Padahal setelah melihat cukup banyak production systemβ€”mulai dari quantitative trading, autonomous agents, sampai berbagai sistem di Web3β€”kenyataannya tidak sesederhana itu.

Yang benar-benar membedakan agent yang hanya terlihat pintar dengan agent yang konsisten menghasilkan keputusan bagus biasanya bukan modelnya.

Justru ada satu lapisan yang sering tidak terlalu dibahas.

Decision Layer

Sederhananya, decision layer adalah cara sebuah agent berpikir sebelum mengambil tindakan.

Ia menentukan:

Menariknya, banyak logic yang membuat decision layer jauh lebih kuat ternyata bukan sesuatu yang rumit. Sebagian besar bahkan cukup sederhana, hanya saja sering terlewat karena perhatian kita terlalu fokus pada model AI yang semakin besar.


Gambaran Besarnya

Sebagian besar agent sederhana bekerja seperti ini.

Market Data
      β”‚
      β–Ό
 Indicators
      β”‚
      β–Ό
     LLM
      β”‚
      β–Ό
 BUY / SELL

Sedangkan production system biasanya memiliki beberapa lapisan validasi tambahan sebelum keputusan benar-benar dieksekusi.

Market Data
      β”‚
      β–Ό
Feature Engineering
      β”‚
      β–Ό
Evidence Accumulation
      β”‚
      β–Ό
Counter-Evidence
      β”‚
      β–Ό
Regime Detection
      β”‚
      β–Ό
Strategy Router
      β”‚
      β–Ό
Expected Value
      β”‚
      β–Ό
Confidence
      β”‚
      β–Ό
Position Sizing
      β”‚
      β–Ό
Execution
      β”‚
      β–Ό
Decision Journal
      β”‚
      β–Ό
Meta Learning

Perbedaannya mungkin terlihat sederhana.

Namun justru lapisan-lapisan kecil inilah yang membuat agent jauh lebih stabil ketika menghadapi market yang terus berubah.


1. Evidence Accumulation

Kesalahan paling umum adalah membeli hanya karena satu indikator mengatakan BUY.

Di production system, keputusan yang baik hampir tidak pernah lahir dari satu sinyal. Yang dicari justru beberapa potongan bukti kecil yang saling menguatkan.

Alih-alih berpikir seperti ini,

"Smart Money masuk. Berarti beli."

agent biasanya berpikir lebih seperti ini.

Smart Money βœ“
Liquidity Stable βœ“
Volume Growing βœ“
Holder Growing βœ“
Developer Active βœ“
        β”‚
        β–Ό
 Confidence Score
        β”‚
        β–Ό
 BUY or SKIP

Baru setelah semua evidence terkumpul, confidence mulai dihitung.

evidence = []

if smart_money.is_accumulating():
    evidence.append(("smart_money", 0.35))

if liquidity.is_stable():
    evidence.append(("liquidity", 0.20))

if volume.is_accelerating():
    evidence.append(("volume", 0.15))

if holders.are_growing():
    evidence.append(("holders", 0.15))

if developer.is_active():
    evidence.append(("dev_activity", 0.15))

confidence = sum(weight for _, weight in evidence)

if confidence >= 0.75:
    decision = BUY
else:
    decision = SKIP

Intinya sederhana: satu indikator bisa saja salah. Lima sinyal independen yang mengarah ke kesimpulan yang sama jauh lebih sulit salah secara bersamaan.


2. Counter-Evidence Engine

Kalau harus memilih satu logic yang paling underrated, mungkin ini jawabannya.

Sebagian besar agent sibuk mencari alasan kenapa sebuah token layak dibeli.

Production system justru melakukan kebalikannya.

Mereka lebih dulu mencari alasan kenapa tidak boleh membeli.

Trading Idea
      β”‚
      β–Ό
Cari alasan gagal
      β”‚
      β”œβ”€β”€ Unlock dekat?
      β”œβ”€β”€ Likuiditas tipis?
      β”œβ”€β”€ Whale terlalu dominan?
      β”œβ”€β”€ Long sudah terlalu ramai?
      β”‚
      β–Ό
Masih layak?
      β”‚
 β”Œβ”€β”€β”€β”€β”΄β”€β”€β”€β”€β”
 β”‚         β”‚
YES       NO
 β”‚         β”‚
BUY      REJECT
reasons_to_reject = []

if unlock.within(days=3):
    reasons_to_reject.append("Upcoming token unlock")

if liquidity.depth < MIN_DEPTH:
    reasons_to_reject.append("Thin liquidity")

if top_holder.ratio > 0.35:
    reasons_to_reject.append("High whale concentration")

if funding.is_extremely_positive():
    reasons_to_reject.append("Crowded long positioning")

if len(reasons_to_reject) >= 2:
    return REJECT

Cara berpikirnya sederhana.

Jangan buru-buru mencari pembenaran.

Cari dulu semua kemungkinan yang bisa membuat ide tersebut gagal.


3. Opportunity Decay

Tidak semua peluang memiliki nilai yang sama sepanjang waktu.

Semakin lama sebuah narrative beredar, biasanya semakin kecil pula edge yang tersisa.

Edge
100% ──────╲
            β•²
             β•²
              β•²
               β•²
                β•²____ Time
score = 1.0

score *= decay(minutes_since_breakout)
score *= decay(hours_since_first_whale_buy)
score *= decay(hours_since_first_kol_mention)
score *= decay(social_mentions_growth)

if score < 0.35:
    return TOO_LATE

Agent tidak hanya bertanya,

"Apakah token ini bagus?"

Tetapi juga,

"Apakah saya sudah terlambat?"

Sering kali pertanyaan kedua jauh lebih penting.


4. Regime Detection

Market tidak pernah berada dalam kondisi yang sama setiap saat.

             Market

      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”
      β”‚        β”‚        β”‚
Expansion Accumulation Distribution
               β”‚
          Transition
if volatility > HIGH and trend > STRONG:
    regime = "EXPANSION"

elif volatility < LOW:
    regime = "ACCUMULATION"

elif volume.is_declining():
    regime = "DISTRIBUTION"

else:
    regime = "TRANSITION"

Masalahnya, banyak agent menggunakan satu strategi untuk semua kondisi.

Padahal market yang berubah seharusnya diikuti oleh cara berpikir yang ikut berubah.


5. Strategy Router

Begitu market regime dikenali, agent memilih strategi yang paling sesuai.

Regime
   β”‚
   β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Expansion  β†’ Momentum
β”‚ Accumulation β†’ Mean Reversion
β”‚ Distribution β†’ Reduce Risk
β”‚ Transition β†’ Observe
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
match regime:

    case "EXPANSION":
        strategy = MomentumStrategy()

    case "ACCUMULATION":
        strategy = MeanReversion()

    case "DISTRIBUTION":
        strategy = ReduceExposure()

    case "TRANSITION":
        strategy = Observe()

Sering kali peningkatan performa bukan datang dari strategi baru, melainkan berhenti memakai strategi yang salah.


6. Expected Value Ranking

Banyak orang memilih token dengan upside terbesar.

Padahal production system lebih peduli pada expected value.

Expected Value

         Probability
              Γ—
           Reward
              β”‚
              β–Ό
              EV
              β–²
              β”‚
      Probability Γ— Risk
expected_value = (
    probability_of_success
    * expected_upside
) - (
    probability_of_failure
    * expected_drawdown
)

rank_by(expected_value)
Token Upside Success Probability
A 20% 85%
B 60% 20%

Token dengan upside terbesar belum tentu menghasilkan keputusan terbaik.


7. Information Freshness

Di crypto, umur informasi sangat pendek.

Wallet yang membeli dua menit lalu jauh lebih relevan dibanding wallet yang membeli dua hari lalu.

Weight

100% ─────╲
           β•²
            β•²
             β•²____ Age
feature.weight = (
    original_weight *
    exp(-lambda_decay * feature.age_minutes)
)

Semakin tua sebuah data, semakin kecil pula pengaruhnya terhadap keputusan.


8. Hypothesis Validation

Production agent tidak berhenti berpikir setelah entry dilakukan.

Ia terus mengecek apakah alasan entry tadi masih valid.

Entry
  β”‚
  β–Ό
Hypothesis
  β”‚
  β–Ό
Collect New Evidence
  β”‚
  β–Ό
Still Valid?
 β”‚       β”‚
YES      NO
 β”‚       β”‚
Hold    Exit
hypothesis = SmartMoneyAccumulation()

while hypothesis.is_alive():

    collect_new_evidence()

    hypothesis.update()

if hypothesis.is_invalid():
    exit_position()

Kalau alasan membeli sudah hilang, tidak ada alasan kuat untuk tetap bertahan.


9. Confidence Calibration

Confidence tidak hanya menentukan BUY atau SELL.

Ia juga menentukan ukuran posisi.

Confidence

0.55 ── No Position

0.70 ── 25%

0.85 ── 50%

1.00 ── Full Size
if confidence < 0.55:
    position_size = 0

elif confidence < 0.70:
    position_size = 0.25

elif confidence < 0.85:
    position_size = 0.50

else:
    position_size = 1.00

Semakin tinggi keyakinan, semakin besar eksposur yang diberikan.


10. Meta Learning

Agent yang baik belajar dari kesalahannya sendiri.

Trade
 β”‚
 β–Ό
Result
 β”‚
 β–Ό
Failure Analysis
 β”‚
 β–Ό
Update Weights
 β”‚
 β–Ό
Better Decision
for trade in completed_trades:

    if trade.failed():

        update_feature_weights(
            reason=trade.failure_reason
        )

        increase_penalty(
            trade.failure_reason
        )

Misalnya setelah ratusan trade ditemukan bahwa sebagian besar kerugian berasal dari token unlock dan fake volume.

Agent cukup menaikkan penalti pada kondisi tersebut.

Tidak perlu mengganti model AI.


11. Opportunity Cost Filter

Kadang masalahnya bukan kekurangan peluang.

Masalahnya justru terlalu banyak peluang, sementara modal tetap terbatas.

100 Candidates
       β”‚
       β–Ό
Expected Value Ranking
       β”‚
       β–Ό
 Top 5 Only
candidates = sort_by(
    expected_value,
    descending=True
)

portfolio = candidates[:5]

Fokus pada peluang terbaik hampir selalu lebih efisien daripada mengejar semuanya.


12. Decision Journal

Setiap keputusan sebaiknya dicatat.

Decision
    β”‚
    β–Ό
 Journal
    β”‚
    β–Ό
Evaluation
    β”‚
    β–Ό
Learning
journal.append({

    "timestamp": now(),
    "asset": token,
    "decision": BUY,
    "confidence": confidence,
    "reasons": evidence,
    "counter_evidence": rejection_signals,
    "expected_value": expected_value,
    "market_regime": regime,
    "result": None

})

Beberapa bulan kemudian, agent bisa menjawab pertanyaan seperti:

Tanpa jurnal, evaluasi hanya bergantung pada ingatan.


Bonus β€” Decision Stability Check

Ini salah satu logic favorit saya karena sangat sederhana.

Agent tidak langsung mengeksekusi keputusan pertama yang muncul.

Ia memastikan keputusan tersebut tetap konsisten selama beberapa iterasi.

Decision
   β”‚
   β–Ό
History (5x)
   β”‚
   β–Ό
Stable?
 β”‚      β”‚
YES     NO
 β”‚      β”‚
Trade  Wait
current = build_decision()

history.append(current)

if len(history) >= 5:

    stable = (
        similarity(history[-5:]) > 0.90
    )

    if stable:
        execute_trade()

Kalau keputusan berubah setiap beberapa detik, besar kemungkinan market masih penuh noise.

Dalam kondisi seperti itu, menunggu sering kali merupakan keputusan terbaik.


Closing Thoughts

Kalau diperhatikan, hampir semua logic di atas sebenarnya tidak membutuhkan AI yang luar biasa rumit.

Tidak ada prompt ribuan kata.

Tidak harus memakai model ratusan miliar parameter.

Yang berubah justru cara agent menyusun proses berpikirnya.

Semakin matang decision layer yang dibangun, semakin sedikit keputusan impulsif yang dibuat.

Pada akhirnya, AI bukanlah pengganti proses berpikir.

AI hanyalah salah satu komponen di dalamnya.

Dan dalam jangka panjang, cara berpikir yang disiplin hampir selalu mengalahkan kecerdasan yang hanya terlihat mengesankan di permukaan.