CODESCRIPT

Strateji

97 işlev. Her kaydın ne aldığı, ne verdiği ve çalışan örneği.

accountCurrency()

Hesap para birimi — SEMBOLDEN türetilir: kripto çiftinde kote para (BTCUSDT → "USDT"), BIST hisse/endeks ve VİOP kontratlarında "TRY", forex/emtia/global endekste "USD". YALNIZ ETİKETTİR: kur dönüşümü yapılmaz, sermaye ve kâr/zarar birimsiz sayı olarak hesaplanır.

Hesap para birimini döndürür — şu an sabit "USD".

Not

Hesap para birimi — SEMBOLDEN türetilir: kripto çiftinde kote para (BTCUSDT → "USDT"), BIST hisse/endeks ve VİOP kontratlarında "TRY", forex/emtia/global endekste "USD". YALNIZ ETİKETTİR: kur dönüşümü yapılmaz, sermaye ve kâr/zarar birimsiz sayı olarak hesaplanır. Değer sabittir ("USD"); çoklu para birimi/kur dönüşümü henüz modellenmez.

Ne zaman kullanılır

Çıktıya ya da etikete hesap para birimini iliştirmek için.

Sınırlar

Şimdilik her zaman "USD" döndürür; sembolün kotasyon para birimini yansıtmaz.

Değer sabittir ("USD"); çoklu para birimi/kur dönüşümü henüz modellenmez.

CODESCRIPT
label(close, accountCurrency())

Fiyata para birimi etiketini (USD) iliştirir.

alert(message, freq?)

Gercek-zaman alarmi: kullanıcı KENDI if koşulu icinde cagirir, guncel (son) barda mesaji uretir. freq: alert.freq_once_per_bar / alert.freq_once_per_bar_close / alert.freq_all. v0.1: yalnizca calisma ciktisi.

Değer döndürmez; koşul son barda false→true olunca bir alarm olayı üretir.

message
İsteğe bağlı. Alarm mesajı.
freq
İsteğe bağlı. Ne sıklıkla gönderilsin: "once_per_bar" (varsayılan), "once_per_bar_close", "all".

Not

v0.1: yalnız çalışma çıktısı; alarm merkezi sonraki fazda bağlanacak.

CODESCRIPT
alert("AL sinyali", alert.freq_once_per_bar_close)

Koşul sağlandığında "AL sinyali" uyarısını gönderir; bar kapanışında bir kez çalışır, aynı barın içinde tekrarlamaz.

alertcondition(condition, title?, message?)

Alarm tanımı: koşul son barda false→true olduğunda alarm olayı üretir (koşul-tabanlı, kenar-kayıt). alert()'ten ayrıdır — alert() mesaj+sıklık tabanlıdır.

Değer döndürmez; koşulun yükselen kenarında (false→true) bir alarm kaydeder.

condition
bool
Alarmın tanımlandığı koşul; false→true kenarında (son bar) tetiklenir.
title
string
İsteğe bağlı. Alarm başlığı (varsayılan "Alarm").
message
string
İsteğe bağlı. Alarm mesajı.

Not

`alert()`'ten AYRIDIR: `alertcondition` koşul-tabanlı ve kenar-tetiklidir (koşul true'ya geçtiği ilk barda). Derleme-anı sabit başlık/mesaj alır.

Ne zaman kullanılır

Bir sinyal koşulu true'ya geçtiği anda tek bir bildirim istiyorsanız.

CODESCRIPT
alertcondition(crossover(close, sma(close, 50)), "Kesişim", "Fiyat SMA50'yi yukarı kesti")

Fiyat SMA50'yi yukarı kestiği barda alarm.

allowEntryIn(direction)

İzin verilen giriş yönü (strategy.direction.long/short/all). İzin-dışı yön YENİ pozisyon açmaz; mevcut ters pozisyonu KAPATIR (reverse etmez).

Değer döndürmez. İzin verilmeyen yönde yeni pozisyon açılmasını engeller.

direction
string
İzin verilen giriş yönü: strategy.direction.long, strategy.direction.short veya strategy.direction.all.

Not

İzin dışı yönde bir sinyal geldiğinde yeni pozisyon açılmaz; açık olan ters pozisyon KAPATILIR (yönü değiştirilmez, sadece kapanır). strategy.direction.all (varsayılan) hiçbir kısıtlama getirmez.

Sınırlar

Yalnız yeni pozisyon açılışını etkiler; pyramiding ile eklenen ek bacaklar da aynı kurala tabidir.

CODESCRIPT
allowEntryIn(strategy.direction.long)
enterLong(rsi(close,14) < 30)
enterShort(rsi(close,14) > 70)

Kısa sinyali geldiğinde açık long kapanır, yeni short AÇILMAZ.

avgLosingTrade()

Kapanan kaybeden islemlerin ortalama % zarari (running, POZITIF-abs; grossLoss ile tutarli). Para için avgLosingTradeCurrency.

Not

grossLoss/lossTrades. grossLoss gibi POZITIF-abs (negatif degil). Para icin *Currency.

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

CODESCRIPT
plot(avgLosingTrade())

Zararla kapanan işlemlerin ortalama yüzde zararını ayrı bölmede çizer; değer pozitif verilir ve her işlem kapandıkça güncellenir.

avgLosingTradeCurrency()

Kapanan kaybeden islemlerin ortalama MUTLAK-PARA zarari (running, pozitif).

Not

grossLossCurrency/lossTrades. avgLosingTrade'in mutlak-para versiyonu (pozitif).

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

CODESCRIPT
plot(avgLosingTradeCurrency())

Zararla kapanan işlemlerin ortalama zararını para birimiyle çizer; yüzde değil, hesaptan çıkan tutar.

avgTrade()

Ortalama işlem net % (running).

İşlem başına ortalama kâr/zararı ((brüt kâr − brüt zarar) / kapanan işlem) koşan seri olarak döndürür.

Not

Henüz kapanan işlem yoksa 0 döner (sıfıra bölme yok).

Ne zaman kullanılır

Stratejinin işlem başına beklentisini ölçmek için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(avgTrade(), "Ort. İşlem")

İşlem başına ortalama sonucu çizer.

avgTradeCurrency()

Kapanan islemlerin ortalama MUTLAK-PARA K/Z (running). avgTrade YÜZDE dondurur; bu para-birimi.

Kapanan tum islemlerin ortalama MUTLAK-PARA K/Z (running).

Not

avgTrade'in MUTLAK-PARA versiyonu (pnlPct/100 x notional; equity-modda notional=baslangic-sermaye). Yuzde-isim (avgTrade) DEGISMEDI, geriye-uyumlu. Para-birimi ile yuzde karistirilmamali.

Ne zaman kullanılır

Pozisyon-boyutlandirma/risk raporlamasi mutlak para-birimi gerektirdiginde (yuzde yerine).

CODESCRIPT
plot(avgTradeCurrency())

Kapanan işlemlerin ortalama kâr/zararını para birimiyle çizer; sıfırın üstü stratejinin ortalamada kazandığını gösterir.

avgWinningTrade()

Kapanan kazanan islemlerin ortalama % kari (running). Yüzde; mutlak-para için avgWinningTradeCurrency.

Not

grossProfit/winTrades. Yuzde-birincil; *Currency soneki mutlak-para verir (naming (A), grossProfit/avgTrade ailesiyle tutarli).

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

CODESCRIPT
plot(avgWinningTrade())

Kârla kapanan işlemlerin ortalama yüzde kârını çizer; kaybeden ortalamasıyla birlikte okununca kazanç/zarar dengesi görünür.

avgWinningTradeCurrency()

Kapanan kazanan islemlerin ortalama MUTLAK-PARA kari (running).

Not

grossProfitCurrency/winTrades. avgWinningTrade'in mutlak-para versiyonu (pnlPct/100 x notional).

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

CODESCRIPT
plot(avgWinningTradeCurrency())

Kârla kapanan işlemlerin ortalama kârını para birimiyle çizer.

cancel(id, when?)

Belirtilen kimlikli bekleyen emri iptal eder — hem bekleyen giriş (limit/stop) hem de bekleyen çıkış emri; aynı kimlik ikisinde de temizlenir (id sabit metin; when verilmezse her bar).

Değer döndürmez; belirtilen id'li bekleyen emri iptal eder.

id
string
İptal edilecek emrin sabit metin kimliği.
when
bool
İsteğe bağlı. İptal koşulu (yoksa her bar).

Not

Aynı kimlik hem bekleyen giriş (limit/stop) hem de bekleyen çıkış emrinde temizlenir. Böyle bir emir yoksa bir şey yapmaz.

Ne zaman kullanılır

Belirli bir bekleyen emri koşula bağlı geri çekmek için (örn. sinyal geçerliliğini yitirince).

Sınırlar

id sabit metin olmalı (dinamik olamaz). Zaten dolmuş bir emri geri almaz.

Uygun değildir

Açık bir pozisyonu kapatmak için uygun değil — cancel yalnız henüz dolmamış bekleyen emri geri çeker; pozisyon kapatmak için exit kullanın. Zaten dolmuş bir emri de geri almaz. Tüm bekleyen emirleri tek seferde temizleyeceksen tek tek cancel yerine cancelAll daha pratiktir.

CODESCRIPT
enterLong(barIndex==0, id='A', limit=close*0.98)
cancel('A', when=barIndex==3)
exit(barIndex==40)

0. barda kurulan 'A' limit emri, 3. barda dolmadıysa iptal olur.

CODESCRIPT
enterLong(barIndex==0, id='A', limit=close*0.97)
cancel('A', when=close < lowest(low,20))
exit(barIndex==40)

Fiyat 20 barlık dibin altına kırılırsa 'A' limit emri iptal edilir; işlem açılmaz.

cancelAll(when?)

Tüm bekleyen emirleri iptal eder — bekleyen giriş ve bekleyen çıkış emirleri birlikte temizlenir (when verilmezse her bar).

Değer döndürmez; tüm bekleyen emirleri iptal eder.

when
bool
İsteğe bağlı. İptal koşulu (yoksa her bar).

Not

Bekleyen giriş ve bekleyen çıkış emirlerinin tümü birlikte temizlenir.

Ne zaman kullanılır

Piyasa durumu değişince ya da gün sonunda tüm bekleyen emirleri tek seferde geri çekmek için.

Sınırlar

Açık pozisyonu kapatmaz (yalnız bekleyen emirleri temizler); pozisyon için exit kullanın.

Uygun değildir

Açık pozisyonu kapatmaz — yalnız bekleyen emirleri temizler; pozisyon için exit kullanın. Tek bir emri hedeflemek istiyorsanız cancelAll fazla geniştir; o zaman id ile cancel kullanın. Zaten dolmuş emirler üzerinde etkisi yoktur.

CODESCRIPT
enterLong(barIndex==0, id='A', limit=close*0.98)
enterLong(barIndex==0, id='B', stop=close*1.02)
cancelAll(when=barIndex==2)
exit(barIndex==40)

2. barda hem A hem B bekleyen emri iptal; dolmamışlarsa işlem açılmaz.

CODESCRIPT
enterLong(barIndex==0, id='A', limit=close*0.98)
enterShort(barIndex==0, id='B', stop=close*1.02)
cancelAll(when=rsi(close,14) > 60)
exit(barIndex==40)

RSI 60'ı aşınca hem A hem B bekleyen emri temizlenir.

cash()

Nakit (equity yaklaşımı). Sonuc: 10000

`equity()` ile birebir aynı sermaye serisini döndürür.

Not

`equity()`'nin eş adıdır.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(cash(), "Nakit")

Sermaye eğrisini çizer.

closeAll(condition?)

Koşul doğru olan barda açık pozisyonun TAMAMINI (tüm bacaklar) koşulsuz kapatır — market çıkış, sinyalin SONRAKİ barının açılış fiyatından dolar. exit() ile aynı çıkış yolunu kullanır ancak fromEntry/qtyPct filtresi yoktur — her zaman tümünü kapatır. Koşul verilmezse her bar kapatır. Koşulu adlandırılmış argümanla da verebilirsiniz: `condition=`, `kosul=` ve `koşul=` üçü de aynı işi yapar.

Değer döndürmez. Koşul doğru olan barda açık pozisyonun TAMAMINI (tüm bacaklar) market fiyatından — sinyalin SONRAKİ barının açılışında — kapatır.

condition
bool
Kapatma koşulu; true olan barda açık pozisyonun tamamı kapanır. Verilmezse her bar kapatır. ⚠ Ad TAM OLARAK `kosul` (ASCII, ş'siz) olmalıdır.

Not

exit() ile aynı çıkış yolunu ve zamanlamasını kullanır (market çıkış sonraki barın açılışında dolar) ancak fromEntry/qtyPct filtresi yoktur — her zaman tümünü kapatır. Çoklu-giriş (pyramiding) veya kısmen kapatılmış pozisyonda kalan tüm bacakları kapatır. Henüz açık pozisyon yokken çağırmak bir şey yapmaz. ⚠ ÖNEMLİ: adlandırılmış argümanın adı TAM OLARAK `kosul` (ASCII, aksansız) olmalı — `condition=` ya da `koşul=` (ş'li) TANINMAZ ve HATA da vermez: koşul hiç verilmemiş sayılır, bu da closeAll'ı HER BAR koşulsuz çalıştırır (sessiz-yanlış bir tuzak). Kardeşi closePart farklı bir yazım (`koşul`, ş'li) kullanır — ikisi birbirinin yerine geçmez.

exit() ile aynı çıkış yolunu ve zamanlamasını kullanır (market çıkış sonraki barın açılışında dolar) ancak fromEntry/qtyPct filtresi yoktur — her zaman tümünü kapatır. Çoklu-giriş (pyramiding) veya kısmen kapatılmış pozisyonda kalan tüm bacakları kapatır. Henüz açık pozisyon yokken çağırmak bir şey yapmaz.

CODESCRIPT
enterLong(crossover(close, sma(close,20)))
closeAll(crossunder(close, sma(close,20)))
plot(close)

20-periyot ortalama yukarı kesilince alır, aşağı kesilince tüm pozisyonu kapatır.

closePart(condition, qtyPct?)

Pozisyonun bir oranını (%) kapatın; oran verilmezse tam kapanış. Koşulu adlandırılmış argümanla da verebilirsiniz: `condition=`, `kosul=` ve `koşul=` üçü de aynı işi yapar. Oran için `qtyPct`, `oran` ve `percent` eşdeğerdir. ⚠ `cond` ve `pct` KISALTMALARI tanınmaz — net hata verir, sessizce yanlış çalışmaz.

Değer döndürmez; koşul-true barında açık pozisyonun `oran`%'sini kapatır (oran verilmezse tam kapanış).

condition
bool
true olan barlarda açık pozisyon kapatılır. ⚠ Ad TAM OLARAK `koşul` (ş harfli) olmalıdır — kardeşi closeAll'ın kullandığı ASCII `kosul` (ş'siz) burada TANINMAZ ve net HATA verir; ayrıca İngilizce bir karşılığı YOKTUR (`condition`/`cond` de çalışmaz).
qtyPct
number
İsteğe bağlı yüzde (0 hariç - 100 dahil). Açık pozisyonun bu oranı kapatılır, kalanı açık kalır. Verilmezse tam kapanış. Adlandırılmış argüman olarak İngilizce `qtyPct` de kullanılabilir (birebir aynı); `pct` ÇALIŞMAZ.

Not

`oran` o an açık KALAN miktar üzerinden uygulanır — ard-arda çağrılar kalanı birikimli azaltır (örn. 1.0 → %25 → 0.75 → %50 → 0.375). Adsız `exit(koşul, qtyPct=oran)` ile aynı kısmi-kapanış davranışı.

Sınırlar

`oran` sabit sayı olmalı ve 0 (hariç) - 100 (dahil) aralığında; aralık dışı veya dinamik değer → net hata.

DİKKAT: `oran` parametresi imzada var ama şu an dikkate alınmıyor — kısmi kapanış yerine TAM kapanış yapılır. Kısmi çıkış için `exit(koşul, qtyPct=...)` kullanın.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
closePart(crossunder(close, sma(close, 30)))

Alt-kesişimde pozisyonu tam kapatır.

closedTradeCommission(n?)

n. kapanan işlemin komisyonu.

Kapanan işlemin round-trip (giriş+çıkış) komisyon maliyeti — para birimi.

n
number
İşlem indeksi (0 ilk, -1 son).

Not

Giriş ve çıkış komisyonunun toplamıdır (yalnız komisyon oranı; kayma/slip DAHİL DEĞİL). Kaldıraç/marj ve pozisyon büyüklüğü hesaba katılır.

Sınırlar

commission() ayarı 0 ise 0 döner. Kayma (slip) bu değere katılmaz.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeCommission(-1), "Komisyon")

Son kapanan işlemin round-trip komisyon maliyetini verir.

closedTradeEntryBar(n?)

n. kapanan işlemin giriş bar indeksi.

n. kapanan işlemin giriş bar indeksini döndürür (giriş zamanından çözülür).

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan -1 (sonuncu)).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeEntryBar(-1), "Giriş Barı")

Son işlemin giriş bar sırasını çizer.

closedTradeEntryComment(n?)

n. kapanan işlemin giriş notu.

n. kapanan işlemin GİRİŞ notu — `enterLong/enterShort(comment="…")` ile yazılan metin. comment verilmemişse boş metin döner.

n
number
n. kapanan işlemin 0-tabanlı indeksi; negatif değer sondan sayar (varsayılan -1 = sonuncu).

Not

Bu alan şu an takip edilmez; her zaman boş metin döner (sözdizimi uyumu için mevcut).

Sınırlar

Gerçek değer üretmez — boş sabiti. Komisyon/MAE/MFE/yorum/kimlik modellenene dek yer tutucu.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
label(close, closedTradeEntryComment(-1))

Boş metin döner (yorum takibi yok).

closedTradeEntryId(n?)

n. kapanan işlemin giriş id'si.

n. kapanan işlemin GİRİŞ emri kimliği — `enterLong/enterShort(id="…")` ile verilen metin. id verilmemişse boş metin döner.

n
number
n. kapanan işlemin 0-tabanlı indeksi; negatif değer sondan sayar (varsayılan -1 = sonuncu).

Not

Bu alan şu an takip edilmez; her zaman boş metin döner (sözdizimi uyumu için mevcut).

Sınırlar

Gerçek değer üretmez — boş sabiti. Komisyon/MAE/MFE/yorum/kimlik modellenene dek yer tutucu.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
label(close, closedTradeEntryId(-1))

Boş metin döner (kimlik takibi yok).

closedTradeEntryPrice(n?)

n. kapanan işlemin giriş fiyatı (neg=sondan).

n. kapanan işlemin giriş fiyatı — `tradeEntryPrice(n)` eş adı.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeEntryPrice(0), "Giriş")

Kapanan işlemin giriş fiyatını çizer.

closedTradeEntryTime(n?)

n. kapanan işlemin giriş zamanı (epoch ms).

n. kapanan işlemin giriş zamanı — `tradeEntryTime(n)` eş adı.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeEntryTime(0), "Giriş Zamanı")

Kapanan işlemin giriş zamanını çizer.

closedTradeExitBar(n?)

n. kapanan işlemin çıkış bar indeksi.

n. kapanan işlemin çıkış bar indeksini döndürür (çıkış zamanından çözülür).

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan -1 (sonuncu)).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeExitBar(-1), "Çıkış Barı")

Son işlemin çıkış bar sırasını çizer.

closedTradeExitComment(n?)

Kapanan islemde exit(comment=...) ile yazilan KULLANICI notu (yoksa bos). Sebep-kodu için closedTradeExitReason().

exit(comment=...) ile yazilan kullanici notu; yoksa bos metin.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan -1 (sonuncu)).

Not

ONCE otomatik sebep-kodunu donduruyordu (yanlis-veri) — artik gercek kullanici notu. Sebep-kodu icin closedTradeExitReason().

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
label(close, closedTradeExitComment(-1))

Son işlemin çıkış nedenini etiketler.

closedTradeExitId(n?)

Kapanisi tetikleyen bekleyen-çıkış emrinin id'si (exit(id=..., limit/stop=...)). Yoksa bos.

n. kapanan işlemin ÇIKIŞ emri kimliği — `exit(id="…")` ile verilen metin. ⚠ `id` yalnız BEKLEYEN çıkışta (limit/stop) anlamlıdır; koşul dolunca anında kapanan işlemde boş metin döner.

n
number
n. kapanan işlemin 0-tabanlı indeksi; negatif değer sondan sayar (varsayılan -1 = sonuncu).

Not

Bu alan şu an takip edilmez; her zaman boş metin döner (sözdizimi uyumu için mevcut).

Sınırlar

Gerçek değer üretmez — boş sabiti. Komisyon/MAE/MFE/yorum/kimlik modellenene dek yer tutucu.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
label(close, closedTradeExitId(-1))

Boş metin döner.

closedTradeExitPrice(n?)

n. kapanan işlemin çıkış fiyatı.

n. kapanan işlemin çıkış fiyatı — `tradeExitPrice(n)` eş adı.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeExitPrice(0), "Çıkış")

Kapanan işlemin çıkış fiyatını çizer.

closedTradeExitReason(n?)

Kapanan işlemin çıkış sebep-kodu: signal | stop | target | trail | partial1 | partial2 | eod | liq | manual | risk | exit. Kendi notunuz için closedTradeExitComment().

Otomatik cikis sebep-kodu (signal/stop/target/trail/partial1/partial2/eod/liq/manual/risk/exit).

n
number
Istege bagli islem indeksi (0 = ilk, negatif = sondan).

Not

ONCE bu deger yanlislikla closedTradeExitComment() ile donuyordu; artik ikisi AYRI: comment = kullanici notu, reason = otomatik sebep-kodu.

Ne zaman kullanılır

Cikisin NEDEN gerceklestigini (stop mu hedef mi iz-suren mi) dala ayirmak icin.

CODESCRIPT
plot(strLength(closedTradeExitReason(0)))

Son kapanan işlemin çıkış sebebini alıp metin uzunluğunu çizer; sebep bir metin olduğu için doğrudan çizilemez, bu örnek onu sayıya çeviriyor.

closedTradeExitTime(n?)

n. kapanan işlemin çıkış zamanı (epoch ms).

n. kapanan işlemin çıkış zamanı — `tradeExitTime(n)` eş adı.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeExitTime(0), "Çıkış Zamanı")

Kapanan işlemin çıkış zamanını çizer.

closedTradeMaxDrawdown(n?)

n. işlemin maks. düşüşü.

Kapanan işlemin süresince gördüğü en kötü geri-çekilme (MAE) — para birimi cinsinden.

n
number
İşlem indeksi (0 ilk, -1 son).

Not

SAF fiyat-hareketidir: komisyon ve taşıma (carry) maliyeti HARİÇ — 'fiyat aleyhinize ne kadar gitti', hesap bakiyesinin salınımı değil. Uzun pozisyonda en düşük düşük (low), kısa pozisyonda en yüksek yüksek (high) esas alınır; giriş ve çıkış barları dahildir.

Sınırlar

Kaldıraç ve marj, kâr/zarar ile aynı ölçekte dahildir. Ölçüm saf fiyat hareketidir; komisyon ve taşıma maliyeti dışarıdadır. Başka platformların rakamlarıyla birebir örtüşmeyebilir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeMaxDrawdown(-1), "MAE")

Son kapanan işlemin en kötü para-cinsinden geri-çekilmesini verir.

closedTradeMaxDrawdownPercent(n?)

n. işlemin maks. düşüş %'si.

Kapanan işlemin en kötü geri-çekilmesi (MAE) — yüzde.

n
number
İşlem indeksi (0 ilk, -1 son).

Not

SAF fiyat-hareketidir: komisyon/carry HARİÇ. Uzun pozisyonda en düşük düşük, kısa pozisyonda en yüksek yüksek; giriş ve çıkış barları dahildir. Yüzde, kâr/zarar yüzdesiyle aynı ölçektedir (kaldıraç dahil).

Sınırlar

Ölçüm saf fiyat hareketidir; komisyon ve taşıma maliyeti dışarıdadır. Başka platformların rakamlarıyla birebir örtüşmeyebilir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeMaxDrawdownPercent(-1), "MAE %")

Son kapanan işlemin en kötü geri-çekilme yüzdesini verir.

closedTradeMaxRunup(n?)

n. işlemin maks. yükselişi.

Kapanan işlemin süresince ulaştığı en iyi yükseliş (MFE) — para birimi cinsinden.

n
number
İşlem indeksi (0 ilk, -1 son).

Not

SAF fiyat-hareketidir: komisyon ve taşıma (carry) maliyeti HARİÇ — 'fiyat lehinize ne kadar gitti'. Uzun pozisyonda en yüksek yüksek (high), kısa pozisyonda en düşük düşük (low) esas alınır; giriş ve çıkış barları dahildir.

Sınırlar

Kaldıraç ve marj, kâr/zarar ile aynı ölçekte dahildir. Ölçüm saf fiyat hareketidir; komisyon ve taşıma maliyeti dışarıdadır. Başka platformların rakamlarıyla birebir örtüşmeyebilir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeMaxRunup(-1), "MFE")

Son kapanan işlemin en iyi para-cinsinden yükselişini verir.

closedTradeMaxRunupPercent(n?)

n. işlemin maks. yükseliş %'si.

Kapanan işlemin en iyi yükselişi (MFE) — yüzde.

n
number
İşlem indeksi (0 ilk, -1 son).

Not

SAF fiyat-hareketidir: komisyon/carry HARİÇ. Uzun pozisyonda en yüksek yüksek, kısa pozisyonda en düşük düşük; giriş ve çıkış barları dahildir. Yüzde, kâr/zarar yüzdesiyle aynı ölçektedir (kaldıraç dahil).

Sınırlar

Ölçüm saf fiyat hareketidir; komisyon ve taşıma maliyeti dışarıdadır. Başka platformların rakamlarıyla birebir örtüşmeyebilir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeMaxRunupPercent(-1), "MFE %")

Son kapanan işlemin en iyi yükseliş yüzdesini verir.

closedTradeProfit(n?)

n. kapanan işlemin kârı (para birimi tahmini).

n. kapanan işlemin kâr/zararını PARA cinsinden döndürür (pnl% × başlangıç sermayesi / 100).

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan -1 (sonuncu)).

Not

Para birimi cinsidir. Yüzde için `closedTradeProfitPercent(n)`.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeProfit(-1), "Son İşlem K/Z")

Son kapanan işlemin para cinsi kâr/zararını çizer.

closedTradeProfitPercent(n?)

n. kapanan işlemin kâr yüzdesi.

n. kapanan işlemin kâr/zararını YÜZDE olarak döndürür (pnl%).

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan -1 (sonuncu)).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeProfitPercent(-1), "Son İşlem %")

Son kapanan işlemin yüzde kâr/zararını çizer.

closedTradeSize(n?)

n. kapanan işlemin büyüklüğü.

n. kapanan işlemin yön/büyüklüğü — `tradeSize(n)` eş adı.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradeSize(0), "Yön")

Kapanan işlemin yönünü çizer.

closedTrades()

Kapanan işlem sayısı (running).

O ana kadar kapanan toplam işlem sayısını koşan seri olarak döndürür.

Ne zaman kullanılır

İşlem sıklığını ve kazanma oranının paydasını izlemek için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTrades(), "Kapanan İşlem")

Kümülatif kapanan işlem sayısını çizer.

closedTradesCount()

Kapanan işlem sayısı.

Kapanan toplam işlem sayısını döndürür — `tradeCount()` ile birebir aynı.

Not

`tradeCount()`'un eş adıdır.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(closedTradesCount(), "Kapanan")

Kapanan işlem sayısını çizer.

closedTradesFirstIndex()

Kapanmış işlem listesinin ilk sırası. Bu yapıda işlem geçmişi hiç kırpılmaz (üst sınır yok), bu yüzden her zaman 0 döner. referans dil'dan taşınan `for i = closedTradesFirstIndex() to closedTradesCount() - 1` biçimindeki döngüler olduğu gibi çalışsın diye vardır.

Kapanmış işlem listesinin ilk sırası. Bu yapıda işlem geçmişi hiç kırpılmaz (üst sınır yok), bu yüzden her zaman 0 döner. `for i = closedTradesFirstIndex() to closedTradesCount() - 1` biçiminde yazılan döngüler, ileride kırpma eklenirse de doğru çalışsın diye vardır.

CODESCRIPT
plot(closedTradesFirstIndex())

Kapanmış işlem listesinin ilk sırasını çizer; liste kırpıldıkça bu sayı büyür, yani en eski işlemlerin listeden düştüğünü gösterir.

convertToAccount(value)

Hesap para birimine çevirir (FX yoksa aynen).

Değeri DEĞİŞTİRMEDEN geri döndürür (birebir). Hesap ve sembol para birimi aynı kabul edildiğinden kur dönüşümü uygulanmaz.

value
number
Dönüştürülecek değer.

Not

Sözdizimi uyumu için vardır; gerçek kur dönüşümü modellenmez (accountCurrency sabit "USD").

Ne zaman kullanılır

Bir değeri hesap para birimine çeviren kodları taşırken sözdizimi uyumu için.

Sınırlar

Değeri olduğu gibi geçirir; çoklu para birimi modellenmediğinden bir kur çarpanı uygulanmaz.

CODESCRIPT
plot(convertToAccount(close), "Değer")

Değeri değişmeden çizer.

convertToSymbol(value)

Sembol para birimine çevirir (FX yoksa aynen).

Değeri DEĞİŞTİRMEDEN geri döndürür (birebir). Kur dönüşümü uygulanmaz.

value
number
Dönüştürülecek değer.

Not

`convertToAccount` ile aynı — yer tutucu geçiş; kur modeli yok.

CODESCRIPT
plot(convertToSymbol(close), "Değer")

Değeri değişmeden çizer.

defaultEntryQty(count)

Her işlemde sabit adet (kontrat/hisse) alın. Çağrıldığında boyutlandırma %equity yerine adet-bazlıya geçer; kâr/zarar adet × fiyat-farkı ile hesaplanır. Hiç çağrılmazsa varsayılan %equity korunur.

Değer döndürmez. Çağrıldığında boyutlandırma varsayılan %equity yerine sabit adet-bazlıya geçer; kâr/zarar adet × fiyat-farkı ile hesaplanır.

count
number
Her işlemde alınacak sabit adet (kontrat/hisse). Adlandırılmış argüman olarak `qty` da kullanılabilir (birebir aynı).

Not

Hiç çağrılmazsa varsayılan %equity boyutlandırması korunur (mevcut stratejilerin sonucu değişmez). Kaldıraç, adet-bazlı modda kâr/zarara girmez; yalnız gereken teminatı ve tasfiye eşiğini belirler. Teminat yetersizse işlem açılmaz (adet kırpılmaz).

Sınırlar

Kontrat/nakit modunda çoklu-giriş (pyramiding) bu sürümde desteklenmez; kaldıraçla çoklu-giriş de kapalıdır.

CODESCRIPT
defaultEntryQty(2)
enterLong(crossover(close, sma(close, 20)))
exit(crossunder(close, sma(close, 20)))
plot(close)

Her işlemde sabit 2 adet alır; kâr/zarar 2 × fiyat-farkı ile hesaplanır.

drawdownPct()

Running maksimum drawdown (%).

O ana kadarki en yüksek sermaye tepesinden düşüşü (maksimum geri-çekilme) yüzde olarak döndürür.

Ne zaman kullanılır

Stratejinin risk profilini ve en kötü su-altı dönemini ölçmek için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(drawdownPct(), "Geri-çekilme %")

Koşan geri-çekilme yüzdesini çizer.

enterLong(condition, stopLoss?, takeProfit?, trailingStop?, id?, limit?, stop?, ocaGroup?, qty?, comment?, stopLossTicks?, takeProfitTicks?, trailTicks?, trailOffsetTicks?, trailFar?, trailNear?, trailThresh1?, trailThresh2?, stopLossAtr?, partial1Pct?, partial1Size?, partial2Pct?, partial2Size?)

Koşul true barda LONG giriş. limit VEYA stop verilirse bekleyen emir kurulur — ikisi birlikte olmaz; hiçbiri yoksa market emir, sinyalin oluştuğu barın SONRAKİ barının açılış fiyatından dolar (bir emir kendi barı kapanmadan doldurulamaz — gerçekçi zamanlama). id sabit metin ise giriş kimliği olur; id + limit/stop → bekleyen emir listesi (aynı kimlik günceller, farklı kimlikler birlikte bekler; cancel(id)/cancelAll ile iptal). ocaGroup sabit metin ise aynı gruptaki diğer bekleyen girişler, biri dolunca otomatik iptal edilir (çekişen kurulum: kırılımda da geri-çekilmede de emir kurun, ilki dolunca diğeri iptal edilir). pyramiding(n) ile aynı yönde n giriş parçasına kadar eklenir. Risk parametreleri (%): stopLoss / takeProfit / trailingStop. Bekleyen limit/stop emirler fiyat seviyeye değince bar içinde (high/low) dolar. qty verilirse o emir MUTLAK-kontrat (global boyutlandirmayi baypas eder; maxPositionSize yine kirpar). comment saf-metin not (entryComment() ile geri-okunur). qty ve comment yalnız adıyla yazılır (sırayla verilemez). Tick-goreli risk: stopLossTicks/takeProfitTicks = N x tickSize MUTLAK fiyat-farkı (yüzde/ATR ile birlesir: en-DAR stop, en-YAKIN hedef). trailTicks = trailing AKTIVASYON esigi (0 = aninda), trailOffsetTicks = TAKIP mesafesi; bir kez aktiflesince KALICI. tickSize sembolden cozulur; cozulemezse bu paramlar uyariyla uygulanmaz. trailOffsetTicks, trailTicks için ZORUNLUDUR (tek başına trailTicks iz-suren kurmaz; eksikse uyari verilir ve uygulanmaz). Aşağıdakilerin hepsi yalnız adıyla yazılır (sırayla verilemez): Kademeli iz-suren stop trailFar/trailNear/trailThresh1/trailThresh2 — kar% trailThresh1'e (vars. 2) ulasana kadar yalniz sabit stopLoss/stopLossAtr gecerli; trailThresh1-trailThresh2 (vars. 5) arasinda trailFar% ile iz-surer; trailThresh2 üstünde trailNear% (verilmezse trailFar) ile daha DAR iz-surer — her asama KALICIDIR, geri donmez. stopLossAtr: N x ATR(14), GIRIŞ barinda sabitlenir (işlem boyunca degismez); stopLoss/stopLossTicks ile birlikte verilirse EN DAR olan gecerli. Kismi kar-alma: partial1Pct/partial1Size ve partial2Pct/partial2Size — kar% esige (Pct) ulasinca o an ACIK KALAN miktarin Size oranı (0-1, orn. 0.5=%50) BIR KEZ kapatilir; iki eşik birbirinden BAGIMSIZ kontrol edilir (ayni barda ikisi de tetiklenebilir).

Değer döndürmez; strateji testine bir giriş emri bildirir.

condition
bool
true olduğu barda long (alış) pozisyonu açılır.
stopLoss
number
İsteğe bağlı. Girişe göre yüzde zarar-kes.
takeProfit
number
İsteğe bağlı. Girişe göre yüzde kâr-al.
trailingStop
number
İsteğe bağlı. Yüzde bazlı iz-süren stop.
id
string
İsteğe bağlı. Sabit metin giriş kimliği (fromEntry/pyramiding için).
limit
number
İsteğe bağlı. Bekleyen limit fiyatı (fiyat buraya DÜŞÜNCE dolar).
stop
number
İsteğe bağlı. Bekleyen stop fiyatı (fiyat buraya ÇIKINCA dolar). limit ile birlikte verilemez.
ocaGroup
string
İsteğe bağlı. Sabit metin grup etiketi (id'li bekleyen girişlerde). Aynı gruptaki emirlerden biri dolunca diğerleri otomatik iptal edilir — çekişen kurulumlar için (biri dolunca diğeri iptal edilir).
qty
number
Istege bagli (yalnız adıyla verilir). MUTLAK kontrat/adet — verilirse o emrin global boyutlandirmasi (equity/fixed/cash) baypas edilir; maxPositionSize yine kirpar. Sabit pozitif sayi; seri/dinamik qty HENUZ desteklenmiyor.
comment
string
Istege bagli (yalnız adıyla verilir). Saf-metin not (id'den AYRI; tracking/cancel islevi YOK). entryComment() ile geri-okunur; grafik-etiketini DEGISTIRMEZ.
stopLossTicks
number
Istege bagli. Zarar-kes: giristen N tick UZAKLIK (N x tickSize mutlak fiyat-farki). stopLoss (yuzde) / stopLossAtr ile birlikte verilirse EN DAR olan gecerli.
takeProfitTicks
number
Istege bagli. Kar-al: giristen N tick UZAKLIK. takeProfit (yuzde) ile birlikte verilirse EN YAKIN olan gecerli.
trailTicks
number
Istege bagli. Trailing AKTIVASYON esigi: giristen N tick kara gecince iz-suren devreye girer (0 = aninda). Bir kez devreye girince fiyat esigin altina dusse bile KALICI kalir.
trailOffsetTicks
number
Istege bagli. Trailing TAKIP mesafesi: en-iyi fiyattan N tick geride. Tick-bazli iz-surenin calismasi icin ZORUNLU (trailTicks tek basina yetmez).
trailFar
number
İsteğe bağlı (yalnız adıyla verilir, sırayla verilemez). Kademeli iz-süren stopun 2. aşaması: kâr yüzdesi trailThresh1-trailThresh2 arasındayken bu yüzdeyle iz-sürer.
trailNear
number
İsteğe bağlı (yalnız adıyla verilir). Kademeli iz-süren stopun 3. (en dar) aşaması: kâr yüzdesi trailThresh2'yi geçince bu yüzdeyle iz-sürer (verilmezse trailFar kullanılır). Bu aşamaya geçiş KALICIDIR, geri dönmez.
trailThresh1
number
İsteğe bağlı (yalnız adıyla verilir). Kâr yüzdesi bu eşiğe ulaşana kadar yalnız sabit stopLoss/stopLossAtr geçerlidir (verilmezse varsayılan 2).
trailThresh2
number
İsteğe bağlı (yalnız adıyla verilir). Kâr yüzdesi bu eşiği geçince daha dar trailNear aşamasına geçilir (verilmezse varsayılan 5).
stopLossAtr
number
İsteğe bağlı (yalnız adıyla verilir). ATR-bazlı zarar-kes: N × ATR(14) — GİRİŞ barında hesaplanıp sabitlenir, işlem boyunca değişmez. stopLoss (yüzde) / stopLossTicks ile birlikte verilirse EN DAR olan geçerlidir.
partial1Pct
number
İsteğe bağlı (yalnız adıyla verilir). 1. kısmi kâr-alma eşiği: kâr yüzdesi bu değere ulaşınca partial1Size oranı kapatılır (bir kez).
partial1Size
number
İsteğe bağlı (yalnız adıyla verilir). partial1Pct'te kapatılacak oran (0-1, örn. 0.5 = %50) — o an AÇIK KALAN miktar üzerinden.
partial2Pct
number
İsteğe bağlı (yalnız adıyla verilir). 2. kısmi kâr-alma eşiği; partial1Pct'ten BAĞIMSIZ kontrol edilir (aynı barda ikisi de tetiklenebilir).
partial2Size
number
İsteğe bağlı (yalnız adıyla verilir). partial2Pct'te kapatılacak oran (0-1) — o an açık kalan miktar üzerinden.

Not

Risk değerleri yüzdedir (stopLoss=2 → %2). Market emir (limit/stop yok) sinyalin oluştuğu barın SONRAKİ barının açılış fiyatından dolar — bir emir kendi barı kapanmadan doldurulamaz (gerçekçi zamanlama). limit veya stop verilirse bunun yerine bekleyen emir kurulur (ikisi birlikte olmaz); bekleyen emirler fiyat seviyeye değince bar içinde gerçekçi dolar. id + limit/stop → bekleyen emir listesi: aynı id günceller, farklı id'ler birlikte bekler. Aynı ocaGroup verilen bekleyen girişlerden biri dolunca diğerleri otomatik iptal edilir (çekişen kurulum: kırılım ile geri-çekilme emirlerini birlikte kurun, ilki dolunca diğeri iptal edilir). pyramiding(n) ile aynı yönde n giriş parçasına kadar eklenir. Kural doğrudan koşul olarak verilir; ayrı bir giriş-emri fonksiyonu yoktur. Bekleyen emir ve kademeli giriş aynı çağrıda toplanır.

Ne zaman kullanılır

Market giriş (limit/stop yok — emir sinyal barının sonraki barının açılışında dolar); belirli bir fiyattan giriş için limit (dip alımı) ya da stop (kırılım). Çok giriş parçasılı ekleme için id + pyramiding.

Sınırlar

id dinamik olamaz (sabit metin şart). limit ve stop aynı çağrıda birlikte verilemez. pyramiding tavanı dolunca yeni giriş parçası eklenmez, emir bekler.

Uygun değildir

Yalnız grafiğe bir işaret koymak istiyorsanız uygun değil — o iş için plotshape kullanın, enterLong gerçek bir işlem açar ve backtest sonucunu etkiler. Zaten açık bir long giriş parçasını korumak/kapatmak için de kullanmayın; çıkış ve koruma exit ile yönetilir. Short yönlü giriş için enterShort'a geçin.

İpucu

Kural doğrudan koşul olarak verilir; ayrı bir giriş-emri fonksiyonu yoktur. Bekleyen emir ve kademeli giriş aynı çağrıda toplanır.

Risk değerleri yüzdedir (stopLoss=2 → %2). Market emir (limit/stop yok) sinyalin oluştuğu barın SONRAKİ barının açılış fiyatından dolar — bir emir kendi barı kapanmadan doldurulamaz (gerçekçi zamanlama). limit veya stop verilirse bunun yerine bekleyen emir kurulur (ikisi birlikte olmaz); bekleyen emirler fiyat seviyeye değince bar içinde gerçekçi dolar. id + limit/stop → bekleyen emir listesi: aynı id günceller, farklı id'ler birlikte bekler. Aynı ocaGroup verilen bekleyen girişlerden biri dolunca kardeşleri otomatik iptal olur (çekişen kurulum: kırılım ile geri-çekilme emirlerini birlikte kurun, ilki dolunca öbürü düşer). pyramiding(n) ile aynı yönde n giriş parçasına kadar eklenir.

Kural doğrudan koşul olarak verilir; ayrı bir giriş-emri fonksiyonu yoktur. Bekleyen emir ve kademeli giriş aynı çağrıda toplanır.

CODESCRIPT
enterLong(crossover(close, sma(close,20)))
exit(crossunder(close, sma(close,20)))

Fiyat SMA20'yi yukarı kesince AL, aşağı kesince kapanış.

CODESCRIPT
enterLong(barIndex==0, limit=sma(close,20)*0.98)
exit(barIndex==40)

SMA20'nin %2 altına bekleyen limit; fiyat oraya düşünce dolar.

enterShort(condition, stopLoss?, takeProfit?, trailingStop?, id?, limit?, stop?, ocaGroup?, qty?, comment?, stopLossTicks?, takeProfitTicks?, trailTicks?, trailOffsetTicks?, trailFar?, trailNear?, trailThresh1?, trailThresh2?, stopLossAtr?, partial1Pct?, partial1Size?, partial2Pct?, partial2Size?)

Koşul true barda SHORT giriş. limit VEYA stop verilirse bekleyen emir kurulur — ikisi birlikte olmaz; hiçbiri yoksa market emir, sinyalin oluştuğu barın SONRAKİ barının açılış fiyatından dolar (bir emir kendi barı kapanmadan doldurulamaz — gerçekçi zamanlama). id sabit metin ise giriş kimliği olur; id + limit/stop → bekleyen emir listesi (aynı kimlik günceller, farklı kimlikler birlikte bekler; cancel(id)/cancelAll ile iptal). ocaGroup sabit metin ise aynı gruptaki diğer bekleyen girişler, biri dolunca otomatik iptal edilir (çekişen kurulum: kırılımda da geri-çekilmede de emir kurun, ilki dolunca diğeri iptal edilir). pyramiding(n) ile aynı yönde n giriş parçasına kadar eklenir. Risk parametreleri (%): stopLoss / takeProfit / trailingStop. qty verilirse o emir MUTLAK-kontrat (global boyutlandirmayi baypas eder; maxPositionSize yine kirpar). comment saf-metin not (entryComment() ile geri-okunur). qty ve comment yalnız adıyla yazılır (sırayla verilemez). Tick-goreli risk: stopLossTicks/takeProfitTicks = N x tickSize MUTLAK fiyat-farkı (yüzde/ATR ile birlesir: en-DAR stop, en-YAKIN hedef). trailTicks = trailing AKTIVASYON esigi (0 = aninda), trailOffsetTicks = TAKIP mesafesi; bir kez aktiflesince KALICI. tickSize sembolden cozulur; cozulemezse bu paramlar uyariyla uygulanmaz. trailOffsetTicks, trailTicks için ZORUNLUDUR (tek başına trailTicks iz-suren kurmaz; eksikse uyari verilir ve uygulanmaz). Aşağıdakilerin hepsi yalnız adıyla yazılır (sırayla verilemez): Kademeli iz-suren stop trailFar/trailNear/trailThresh1/trailThresh2 — kar% trailThresh1'e (vars. 2) ulasana kadar yalniz sabit stopLoss/stopLossAtr gecerli; trailThresh1-trailThresh2 (vars. 5) arasinda trailFar% ile iz-surer; trailThresh2 üstünde trailNear% (verilmezse trailFar) ile daha DAR iz-surer — her asama KALICIDIR, geri donmez. stopLossAtr: N x ATR(14), GIRIŞ barinda sabitlenir (işlem boyunca degismez); stopLoss/stopLossTicks ile birlikte verilirse EN DAR olan gecerli. Kismi kar-alma: partial1Pct/partial1Size ve partial2Pct/partial2Size — kar% esige (Pct) ulasinca o an ACIK KALAN miktarin Size oranı (0-1, orn. 0.5=%50) BIR KEZ kapatilir; iki eşik birbirinden BAGIMSIZ kontrol edilir (ayni barda ikisi de tetiklenebilir). Şort için kâr yönü TERSTİR (fiyat düşünce kâr artar) — trail/partial eşikleri buna göre hesaplanır.

Değer döndürmez; strateji testine bir short giriş emri bildirir.

condition
bool
true olduğu barda short (satış) pozisyonu açılır.
stopLoss
number
İsteğe bağlı. Girişe göre yüzde zarar-kes.
takeProfit
number
İsteğe bağlı. Girişe göre yüzde kâr-al.
trailingStop
number
İsteğe bağlı. Yüzde bazlı iz-süren stop.
id
string
İsteğe bağlı. Sabit metin giriş kimliği.
limit
number
İsteğe bağlı. Bekleyen limit fiyatı.
stop
number
İsteğe bağlı. Bekleyen stop fiyatı. limit ile birlikte verilemez.
ocaGroup
string
İsteğe bağlı. Sabit metin grup etiketi (id'li bekleyen girişlerde). Aynı gruptaki emirlerden biri dolunca diğerleri otomatik iptal edilir — çekişen kurulumlar için (biri dolunca diğeri iptal edilir).
qty
number
Istege bagli (yalnız adıyla verilir). MUTLAK kontrat/adet — verilirse o emrin global boyutlandirmasi (equity/fixed/cash) baypas edilir; maxPositionSize yine kirpar. Sabit pozitif sayi; seri/dinamik qty HENUZ desteklenmiyor.
comment
string
Istege bagli (yalnız adıyla verilir). Saf-metin not (id'den AYRI; tracking/cancel islevi YOK). entryComment() ile geri-okunur; grafik-etiketini DEGISTIRMEZ.
stopLossTicks
number
Istege bagli. Zarar-kes: giristen N tick UZAKLIK (N x tickSize mutlak fiyat-farki). stopLoss (yuzde) / stopLossAtr ile birlikte verilirse EN DAR olan gecerli.
takeProfitTicks
number
Istege bagli. Kar-al: giristen N tick UZAKLIK. takeProfit (yuzde) ile birlikte verilirse EN YAKIN olan gecerli.
trailTicks
number
Istege bagli. Trailing AKTIVASYON esigi: giristen N tick kara gecince iz-suren devreye girer (0 = aninda). Bir kez devreye girince fiyat esigin altina dusse bile KALICI kalir.
trailOffsetTicks
number
Istege bagli. Trailing TAKIP mesafesi: en-iyi fiyattan N tick geride. Tick-bazli iz-surenin calismasi icin ZORUNLU (trailTicks tek basina yetmez).
trailFar
number
İsteğe bağlı (yalnız adıyla verilir, sırayla verilemez). Kademeli iz-süren stopun 2. aşaması: kâr yüzdesi trailThresh1-trailThresh2 arasındayken bu yüzdeyle iz-sürer.
trailNear
number
İsteğe bağlı (yalnız adıyla verilir). Kademeli iz-süren stopun 3. (en dar) aşaması: kâr yüzdesi trailThresh2'yi geçince bu yüzdeyle iz-sürer (verilmezse trailFar kullanılır). Bu aşamaya geçiş KALICIDIR, geri dönmez.
trailThresh1
number
İsteğe bağlı (yalnız adıyla verilir). Kâr yüzdesi bu eşiğe ulaşana kadar yalnız sabit stopLoss/stopLossAtr geçerlidir (verilmezse varsayılan 2).
trailThresh2
number
İsteğe bağlı (yalnız adıyla verilir). Kâr yüzdesi bu eşiği geçince daha dar trailNear aşamasına geçilir (verilmezse varsayılan 5).
stopLossAtr
number
İsteğe bağlı (yalnız adıyla verilir). ATR-bazlı zarar-kes: N × ATR(14) — GİRİŞ barında hesaplanıp sabitlenir, işlem boyunca değişmez. stopLoss (yüzde) / stopLossTicks ile birlikte verilirse EN DAR olan geçerlidir.
partial1Pct
number
İsteğe bağlı (yalnız adıyla verilir). 1. kısmi kâr-alma eşiği: kâr yüzdesi bu değere ulaşınca partial1Size oranı kapatılır (bir kez).
partial1Size
number
İsteğe bağlı (yalnız adıyla verilir). partial1Pct'te kapatılacak oran (0-1, örn. 0.5 = %50) — o an AÇIK KALAN miktar üzerinden.
partial2Pct
number
İsteğe bağlı (yalnız adıyla verilir). 2. kısmi kâr-alma eşiği; partial1Pct'ten BAĞIMSIZ kontrol edilir (aynı barda ikisi de tetiklenebilir).
partial2Size
number
İsteğe bağlı (yalnız adıyla verilir). partial2Pct'te kapatılacak oran (0-1) — o an açık kalan miktar üzerinden.

Not

enterLong'un short karşılığı; aynı id/limit/stop/pyramiding/ocaGroup kuralları ve doluş zamanlaması geçerli (market emir sinyalin sonraki barının açılış fiyatından dolar), risk değerleri yüzdedir.

Ne zaman kullanılır

enterLong ile aynı mantık; tek fark yön short (aşağı). Market giriş sonraki barın açılışında dolar, belirli fiyat için limit/stop, ekleme için id + pyramiding.

Sınırlar

SPOT modda short açılmaz. id dinamik olamaz; limit ve stop birlikte verilemez. pyramiding tavanı dolunca yeni giriş parçası beklemede kalır.

Uygun değildir

SPOT modda short açılmadığı için orada uygun değil; yalnız futures/short destekli modda kullanın. Grafiğe işaret koymak için değil (plotshape), açık giriş parçasını kapatmak için de değil (exit). Yükseliş beklentisiyle giriş yapacaksan enterLong'a geçin.

CODESCRIPT
enterShort(crossunder(close, sma(close,20)))
exit(crossover(close, sma(close,20)))

Fiyat SMA20'yi aşağı kesince SAT, yukarı kesince kapanış.

CODESCRIPT
enterShort(barIndex==0, id='S', stop=sma(close,20)*1.02)
exit(barIndex==40)

SMA20'nin %2 üstüne bekleyen stop; fiyat oraya çıkınca short dolar.

entryComment()

Aktif pozisyonun giriş-emrindeki comment (saf-metin not; id'den AYRI). Pozisyon yoksa "".

Aktif pozisyonun giris-emrindeki comment string'i; pozisyon yoksa bos string.

Not

enterLong/Short(comment=...) ile yazilan saf-metin notu okur. id'den AYRIDIR (tracking/cancel yapmaz). Pyramiding'de son-eklenen bacagin comment'i aktiftir.

Ne zaman kullanılır

Ayni stratejide farkli giris-sebeplerini (ornek "trend"/"reversal") ayirt edip cikis/raporlama mantigini buna gore kurmak icin.

CODESCRIPT
plot(entryComment()=="trend" ? 1 : 0)

Açık pozisyonun giriş notu "trend" ise 1, değilse 0 çizer; aynı grafikte farklı giriş sebeplerini ayırt etmeye yarar.

entryMarket(condition, direction?)

Piyasa girişi (yön: long/short).

Değer döndürmez; koşul-true barında piyasa emri yönlendirir. enterLong/enterShort'un sade sarmalayıcısıdır.

condition
bool
true olan barlarda piyasa (market) emriyle pozisyona girilir.
direction
string
İsteğe bağlı. "short"/"sat" ya da false → kısa; aksi halde uzun (varsayılan uzun).

Not

`order` bu fonksiyonun eş adıdır (aynı davranış). Yön argümanı ile tek çağrıda uzun/kısa seçilir; stop/kâr-al gibi risk argümanları için enterLong/enterShort kullanın.

Ne zaman kullanılır

Yönü bir değişkenle belirleyip tek satırda giriş yönlendirmek istediğinde.

CODESCRIPT
yon = close > open ? "long" : "short"
entryMarket(crossover(close, sma(close, 20)), yon)

Kesişim barında, mum yönüne göre uzun ya da kısa piyasa emri.

equity()

Backtest equity serisi (kâr/zarar zaman içinde). plot(equity()) ile çizin.

Backtest sermaye (equity) serisini döndürür (risk-sonrası, emir-öncesi, bar kapanışında değerlenir).

Not

Başlangıç sermayesi belirtilmezse 10000 kabul edilir. `cash()` bu fonksiyonun eş adıdır.

Ne zaman kullanılır

Strateji performansını grafiğe çizmek ya da sermaye tabanlı pozisyon boyutlandırmada.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(equity(), "Sermaye")

Sermaye eğrisini alt panoda çizer.

exit(condition, fromEntry?, qtyPct?, id?, limit?, stop?, comment?, commentProfit?, commentLoss?, profit?, loss?)

Koşul doğru olan barda açık pozisyonu kapatın — market çıkış, sinyalin oluştuğu barın SONRAKİ barının açılış fiyatından dolar (giriş gibi gerçekçi zamanlama). fromEntry sabit metin ise yalnız o giriş parçasını hedefler; qtyPct kalanın yüzdesini kapatır. limit ve/veya stop verilirse kimlikli bekleyen çıkış emri kurulur (fiyat seviyeye değince bar içinde dolar; id sabit metin şart). limit+stop birlikte = bracket (kâr-al + zarar-kes): biri dolunca diğeri iptal (OCO). comment: cikisa yazilan SAF-METIN not — closedTradeExitComment() ile geri okunur; otomatik sebep-kodu (signal/stop/target/trail/eod...) AYRI olarak closedTradeExitReason() ile okunur. commentProfit/commentLoss: limit ya da stop seviyesinden hangisi dolduysa o notu yazar (yoksa comment). profit/loss: koruma seviyesini FİYAT yerine TİK cinsinden verir — giriş fiyatından profit×tik yukarısı kâr-al, loss×tik aşağısı zarar-kes (kısa pozisyonda ters). Girişin risk ayarına yazılır, yani stopLossTicks/takeProfitTicks ile AYNI mekanizmadır. Koşulsuz çağrıda geçerlidir; koşula bağlı yazımda kurulmaz ve uyarı verilir.

Değer döndürmez; market çıkış (sonraki barın açılışında) tetikler ya da id'li bir bekleyen çıkış emri kurar.

condition
bool
true olduğu barda çıkış tetiklenir; bekleyen emirlerde bu koşul emri devreye alır.
fromEntry
string
İsteğe bağlı. Sabit metin; yalnız bu id'li giriş parçasını hedefler (yoksa tüm açık giriş parçaları).
qtyPct
number
İsteğe bağlı. Hedef giriş parçalarının kalanının yüzde kaçının kapatılacağı (yoksa %100).
id
string
İsteğe bağlı. Bekleyen çıkış emrinin kimliği (limit/stop ile birlikte zorunlu).
limit
number
İsteğe bağlı. Bekleyen kâr-al fiyatı.
stop
number
İsteğe bağlı. Bekleyen zarar-kes fiyatı.
comment
string
Istege bagli. Cikisa yazilan saf-metin not (sabit string). closedTradeExitComment() ile geri okunur. Sebep-kodunu DEGISTIRMEZ; o closedTradeExitReason() ile ayri okunur.
commentProfit
string
İsteğe bağlı. Yalnız limit (kâr-hedefi) seviyesi dolduğunda kullanılacak çıkış notu. Verilmezse comment kullanılır. Sabit metin olmalı. limit verilmeden yazılırsa uyarı gösterilir ve yok sayılır.
commentLoss
string
İsteğe bağlı. Yalnız stop (zarar-kes) seviyesi dolduğunda kullanılacak çıkış notu. Verilmezse comment kullanılır. Sabit metin olmalı. stop verilmeden yazılırsa uyarı gösterilir ve yok sayılır.
profit
number
İsteğe bağlı. Kâr-al seviyesi TİK cinsinden: giriş fiyatından bu kadar tik uzağa kurulur (kısa pozisyonda ters yöne). takeProfitTicks ile aynı mekanizmadır. Koşula bağlı çağrıda da kurulur ama seviye her bara uygulanır ve uyarı verilir.
loss
number
İsteğe bağlı. Zarar-kes seviyesi TİK cinsinden: giriş fiyatından bu kadar tik uzağa kurulur (kısa pozisyonda ters yöne). stopLossTicks ile aynı mekanizmadır.

Not

limit/stop verilmezse market çıkış olur: sinyalin oluştuğu barın SONRAKİ barının açılış fiyatından dolar (giriş gibi gerçekçi zamanlama). Yalnız limit ya da yalnız stop → kimlikli bekleyen çıkış (fiyat seviyeye değince bar içinde dolar). limit ve stop birlikte → bracket (kâr-al + zarar-kes çifti): biri dolunca diğeri otomatik iptal olur (OCO). qtyPct kısmi kapatır; bracket tek seferliktir (dolunca silinir, kalan giriş parçası korumasız kalır).

Ne zaman kullanılır

Kurala bağlı market çıkış için sade exit(koşul) — sinyalin sonraki barının açılışında dolar. Belirli hedef/zarar seviyesi için bekleyen limit/stop. Kâr-al ve zarar-kes çiftini tek emirde yönetmek için bracket (limit+stop).

Sınırlar

id ve fromEntry dinamik olamaz. Bracket'te aynı barda hem hedefe hem zarar seviyesine dokunulursa önce erişilen dolar; tam eşitlikte zarar-kes önceliklidir. Pozisyon seviyesindeki risk-kes (stopLoss/takeProfit) aynı barda önce değerlendirilir; pozisyonu kapatırsa bekleyen çıkış emirleri o bar dolmaz.

Uygun değildir

Yeni bir pozisyon açmak için uygun değil — giriş enterLong/enterShort iledir; exit yalnız açık bir giriş parçasını kapatır ya da ona koruma emri kurar. Henüz açık pozisyon yokken exit çağırmak bir şey yapmaz. Bekleyen bir giriş emrini geri çekmek istiyorsanız exit değil cancel/cancelAll kullanın.

İpucu

Tek çağrı hem market çıkışı hem de bekleyen kâr-al / zarar-kes emrini yönetir; limit ve stop birlikte verildiğinde biri dolunca diğeri iptal olur.

BTCUSDT5dk62,448-0.35%bracket / OCO — kâr-al + zarar-kes62,36162,52162,68162,84063,000HACİM62,448kâr-al (limit)zarar-kes (stop)ALÇıkış

Tek çağrı hem market çıkışı hem de bekleyen kâr-al / zarar-kes emrini yönetir; limit ve stop birlikte verildiğinde biri dolunca diğeri iptal olur.

CODESCRIPT
enterLong(crossover(close, sma(close,10)))
exit(crossunder(close, sma(close,10)))

Kurala bağlı anlık çıkış: SMA10 aşağı kesilince kapanış.

CODESCRIPT
enterLong(barIndex==0, id='L')
exit(barIndex==5, fromEntry='L', qtyPct=50)
exit(barIndex==40)

5. barda L giriş parçasının yalnız %50'si kapanır; kalanı 40. barda.

grossLoss()

Kapanan zararlı işlemlerin toplam % zararı (running).

Zararlı kapanan işlemlerin toplam zararını (brüt zarar, pozitif büyüklük) koşan seri olarak döndürür.

Ne zaman kullanılır

Kâr faktörü ve risk oranlarında payda olarak.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(grossLoss(), "Brüt Zarar")

Kümülatif brüt zararı çizer.

grossLossCurrency()

Kapanan zararli islemlerin toplam MUTLAK-PARA zarari (running, pozitif). grossLoss YÜZDE dondurur; bu para-birimi.

Kapanan zararli islemlerin toplam MUTLAK-PARA zarari (running, pozitif sayi).

Not

grossLoss'in MUTLAK-PARA versiyonu (pnlPct/100 x notional; equity-modda notional=baslangic-sermaye). Yuzde-isim (grossLoss) DEGISMEDI, geriye-uyumlu. Para-birimi ile yuzde karistirilmamali.

Ne zaman kullanılır

Pozisyon-boyutlandirma/risk raporlamasi mutlak para-birimi gerektirdiginde (yuzde yerine).

CODESCRIPT
plot(grossLossCurrency())

Zararla kapanan tüm işlemlerin toplam zararını para birimiyle çizer; pozitif sayı olarak verilir.

grossProfit()

Kapanan kârlı işlemlerin toplam % kârı (running).

Kazançlı kapanan işlemlerin toplam kârını (brüt kâr) koşan seri olarak döndürür.

Ne zaman kullanılır

Kâr faktörü (grossProfit/grossLoss) gibi performans oranlarını hesaplamak için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(grossProfit(), "Brüt Kâr")

Kümülatif brüt kârı çizer.

grossProfitCurrency()

Kapanan karli islemlerin toplam MUTLAK-PARA kari (running). grossProfit YÜZDE dondurur; bu para-birimi (pnlPct/100 x notional).

Kapanan karli islemlerin toplam MUTLAK-PARA kari (o bara kadar, running).

Not

grossProfit'in MUTLAK-PARA versiyonu (pnlPct/100 x notional; equity-modda notional=baslangic-sermaye). Yuzde-isim (grossProfit) DEGISMEDI, geriye-uyumlu. Para-birimi ile yuzde karistirilmamali.

Ne zaman kullanılır

Pozisyon-boyutlandirma/risk raporlamasi mutlak para-birimi gerektirdiginde (yuzde yerine).

CODESCRIPT
plot(grossProfitCurrency())

Kârla kapanan tüm işlemlerin toplam kârını para birimiyle çizer.

largestLosingTrade()

Tek-işlem en-büyük % zarar (running, POZITIF-abs). Para için largestLosingTradeCurrency.

Not

Simdiye kadarki tek kapanan islemin en-buyuk % zarari, POZITIF-abs. Para icin *Currency.

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

CODESCRIPT
plot(largestLosingTrade())

Tek bir işlemde görülen en büyük yüzde zararı çizer; stratejinin en kötü anını gösterir.

largestLosingTradeCurrency()

Tek-işlem en-büyük MUTLAK-PARA zarar (running, pozitif).

Not

Tek bir kapanan işlemde görülen en büyük zarar. Ölçü birimi yüzdedir; `Currency` ekli sürüm mutlak para değerini verir (yüzde ÷ 100 × pozisyon büyüklüğü). Zarar ölçütleri pozitif sayı olarak verilir — `grossLoss` ile aynı kural.

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

Tek kapanan islemin en-buyuk mutlak-para zarari (pozitif).

CODESCRIPT
plot(largestLosingTradeCurrency())

Tek bir işlemde görülen en büyük zararı para birimiyle çizer.

largestWinningTrade()

Tek-işlem en-büyük % kar (running). Para için largestWinningTradeCurrency.

Not

Simdiye kadarki tek kapanan islemin en-buyuk % kari. Para icin *Currency.

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

CODESCRIPT
plot(largestWinningTrade())

Tek bir işlemde görülen en büyük yüzde kârı çizer.

largestWinningTradeCurrency()

Tek-işlem en-büyük MUTLAK-PARA kar (running).

Not

Tek kapanan islemin en-buyuk mutlak-para kari (pnlPct/100 x notional bazinda).

Ne zaman kullanılır

Islem-kalitesi/risk raporlamasi (ortalama kazanc-kayip, en-buyuk tek-islem) gerektiginde.

CODESCRIPT
plot(largestWinningTradeCurrency())

Tek bir işlemde görülen en büyük kârı para birimiyle çizer.

lossTrades()

Kaybeden işlem sayısı (running).

O ana kadar zararla kapanan işlem sayısını koşan seri olarak döndürür.

Ne zaman kullanılır

Kayıp oranı ve beklenti hesaplarında.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(lossTrades(), "Kaybeden")

Kümülatif kaybeden işlem sayısını çizer.

marginLiquidationPrice()

Kaldiracli pozisyonda marj-likidasyon fiyati: long → giriş x (1 - 1/kaldirac), short → giriş x (1 + 1/kaldirac). Kaldirac yoksa (1x) veya pozisyon yoksa bos.

Not

Fiyat bu seviyeye ulasirsa pozisyon likide olur (equity sifirlanir). Likidasyon kontrolunde kullanilan AYNI formul. Kaldiracsiz hesapta anlamsiz oldugu icin bos doner.

Ne zaman kullanılır

Kaldirac/marj riskini ve pozisyon-buyuklugu tepe-noktasini raporlarken.

CODESCRIPT
plot(marginLiquidationPrice())

Kaldıraçlı pozisyonun tasfiye fiyatını fiyatın üstüne çizer; fiyat bu çizgiye ulaşırsa pozisyon zorla kapatılır.

maxConsecLossDays(n)

n ardışık ZARARLI günden sonra pozisyonlar ZORLA KAPANIR ve yeni emir kalıcı engellenir. Adlandırılmış argüman olarak `count` da kullanılabilir (n ile birebir aynı).

Değer döndürmez. n ardışık zararlı günün ardından açık pozisyon kapatılır ve strateji kalıcı olarak durur.

n
number
Ardışık zararlı gün sınırı. Adlandırılmış argüman olarak `count` da kullanılabilir (birebir aynı).

Not

Bir gün, o günün kapanış sermayesi gün başındakinden düşükse zararlı sayılır. Sınır bir kez aşıldığında etkisi kalıcıdır; aynı çalıştırmada strateji bir daha pozisyon açmaz.

Sınırlar

Yalnız backtest/paper simülasyonunu etkiler; gerçek bir brokere bağlı canlı emirler bu sürümde yoktur.

CODESCRIPT
maxConsecLossDays(2)
enterLong(true)

2 ardışık zararlı günün ardından pozisyon kapanır, strateji bir daha giriş yapmaz.

maxContractsHeldAll()

Simdiye kadar TUTULAN en yüksek kontrat sayısı (yon farketmeksizin, mutlak değer).

Not

Kaynak: her bardaki pozisyon buyuklugu (positionSize) uzerinden running-max. %equity modunda oran-bazli, kontrat/nakit modunda gercek kontrat sayisidir.

Ne zaman kullanılır

Kaldirac/marj riskini ve pozisyon-buyuklugu tepe-noktasini raporlarken.

CODESCRIPT
plot(maxContractsHeldAll())

Şimdiye kadar aynı anda tutulan en büyük pozisyonu çizer; alış ve satış ayrımı yapmaz.

maxContractsHeldLong()

Simdiye kadar TUTULAN en yüksek LONG kontrat sayısı.

Not

Yalnızca long taraf; short barlar 0 sayılır. Değer, bar bar kaydedilen pozisyon büyüklüğünün o ana kadarki en yükseğidir — tasfiye hesabında kullanılan formülün aynısı.

Ne zaman kullanılır

Kaldirac/marj riskini ve pozisyon-buyuklugu tepe-noktasini raporlarken.

Yalnizca long taraf; short barlar 0 sayilir.

CODESCRIPT
plot(maxContractsHeldLong())

Şimdiye kadar tutulan en büyük alış pozisyonunu çizer.

maxContractsHeldShort()

Simdiye kadar TUTULAN en yüksek SHORT kontrat sayısı.

Not

Yalnızca short taraf; long barlar 0 sayılır. Değer, bar bar kaydedilen pozisyon büyüklüğünün o ana kadarki en yükseğidir — tasfiye hesabında kullanılan formülün aynısı.

Ne zaman kullanılır

Kaldirac/marj riskini ve pozisyon-buyuklugu tepe-noktasini raporlarken.

Yalnizca short taraf; long barlar 0 sayilir.

CODESCRIPT
plot(maxContractsHeldShort())

Şimdiye kadar tutulan en büyük satış pozisyonunu çizer.

maxDrawdownRisk(amount, type)

Maksimum düşüş limiti; aşılınca pozisyonlar ZORLA KAPANIR ve yeni emir kalıcı engellenir. tip: strategy.percent_of_equity (tepe-equity %si) | strategy.cash (mutlak).

Değer döndürmez. Düşüş bu sınırı aşınca açık pozisyon kapatılır ve strateji kalıcı olarak durur.

amount
number
İzin verilen en yüksek düşüş.
type
string
strategy.percent_of_equity (tepe sermayenin yüzdesi, varsayılan) veya strategy.cash (mutlak tutar).

Not

Sınır bir kez aşıldığında etkisi kalıcıdır; aynı çalıştırmada strateji bir daha pozisyon açmaz. Düşüş GİRİŞ fiyatına göre değil, stratejinin o ana kadar ulaştığı EN YÜKSEK equity'ye (tepe) göre ölçülür — pozisyon giriş fiyatına göre hâlâ kârda olsa bile equity kendi tepesinden bu oranda gerilerse yine tetiklenir.

Sınırlar

Yalnız backtest/paper simülasyonunu etkiler; gerçek bir brokere bağlı canlı emirler bu sürümde yoktur.

CODESCRIPT
maxDrawdownRisk(10, strategy.percent_of_equity)
enterLong(true)

Pozisyon giriş fiyatına göre hâlâ kârda olsa bile, equity kendi tepesinden %10 düşünce pozisyon kapanır, strateji bir daha giriş yapmaz.

maxIntradayFilledOrders(n)

Günde n dolan emirden sonra pozisyonlar ZORLA KAPANIR ve seans sonuna dek yeni emir engellenir. Adlandırılmış argüman olarak `count` da kullanılabilir (n ile birebir aynı).

Değer döndürmez. Gün içinde n emir dolduktan sonra açık pozisyon kapatılır ve o gün için yeni giriş engellenir.

n
number
Gün-içi dolan emir sınırı. Adlandırılmış argüman olarak `count` da kullanılabilir (birebir aynı).

Not

Amaç, aşırı sık işlem yapılmasını sınırlamaktır. Sınır bir sonraki gün (UTC gün değişiminde) sıfırlanır.

Sınırlar

Yalnız backtest/paper simülasyonunu etkiler; gerçek bir brokere bağlı canlı emirler bu sürümde yoktur.

CODESCRIPT
maxIntradayFilledOrders(3)
enterLong(barIndex % 2 == 0)
enterShort(barIndex % 2 == 1)

Gün içinde 3. emir dolunca pozisyon kapanır, o gün yeni giriş açılmaz.

maxIntradayLoss(amount, type)

Gün içi maksimum zarar; aşılınca o gün pozisyonlar ZORLA KAPANIR ve yeni emir engellenir (ertesi gün sıfırlanır). tip: percent_of_equity | cash.

Değer döndürmez. Gün içi zarar bu sınırı aşınca açık pozisyon kapatılır ve o gün için yeni giriş engellenir.

amount
number
İzin verilen en yüksek gün-içi zarar.
type
string
strategy.percent_of_equity (gün başı sermayenin yüzdesi, varsayılan) veya strategy.cash (mutlak tutar).

Not

Kısıtlama yalnız o gün geçerlidir; bir sonraki gün (UTC gün değişiminde) sıfırlanır ve strateji normal çalışmaya döner.

Sınırlar

Yalnız backtest/paper simülasyonunu etkiler; gerçek bir brokere bağlı canlı emirler bu sürümde yoktur.

CODESCRIPT
maxIntradayLoss(5, strategy.percent_of_equity)
enterLong(true)

Gün içinde sermayenin %5'i kaybedilince pozisyon kapanır; ertesi gün sınır sıfırlanır.

maxPositionSize(count)

Kontrat/nakit modunda (defaultEntryQty/sizeByCash) pozisyonun ulaşabileceği en yüksek kontrat/hisse adedi; istenen büyüklük bu sınırı aşarsa sınıra indirilir. %equity modunda etkisizdir.

Değer döndürmez. Kontrat/nakit modunda (defaultEntryQty veya sizeByCash) pozisyonun ulaşabileceği en yüksek adedi sınırlar; istenen büyüklük bu sınırı aşarsa sınıra indirilir.

count
number
İzin verilen en yüksek pozisyon boyutu (kontrat/hisse adedi).

Not

Yalnız adet-bazlı boyutlandırmayla (defaultEntryQty/sizeByCash) birlikte anlamlıdır. Varsayılan %equity modunda kontrat kavramı olmadığından etkisizdir ve çağrıldığında bir uyarı verilir.

Sınırlar

%equity modunda etkisizdir (uyarı verir). Kontrat sınırı için önce defaultEntryQty veya sizeByCash ile adet-bazlı moda geçin.

CODESCRIPT
defaultEntryQty(5)
maxPositionSize(2)
enterLong(crossover(close, sma(close, 20)))
exit(crossunder(close, sma(close, 20)))
plot(close)

5 adet istense de pozisyon en fazla 2 adete kadar açılır (sınıra indirilir).

netPnl()

Başlangıç sermayesine göre net kâr veya zararı bar bar verir. Sıfırın üstü kâr, altı zarar demektir. Bir stratejinin eğrisini çizmek ya da belirli bir kayıptan sonra davranış değiştirmek için okunur.

Net kâr/zarar serisini döndürür: sermaye − başlangıç sermayesi.

Ne zaman kullanılır

Stratejinin başlangıca göre kümülatif kazancını izlemek için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(netPnl(), "Net K/Z")

Kümülatif net kâr/zararı çizer.

openTradeCapitalHeld()

Açık pozisyonun hesaptan AYIRDIĞI (kilitlediği) para: nominal ÷ kaldıraç. Kaldıraç yoksa nominale eşittir, 10 kat kaldıraçta onda biri olur. Nominal tabanı openTradeProfit ile aynıdır (varsayılan %%equity → başlangıç sermayesi, kontrat modu → adet × giriş fiyatı, nakit modu → ayrılan nakit). Pozisyon yoksa boş değer.

CODESCRIPT
plot(openTradeCapitalHeld())

Açık pozisyonun hesapta kilitlediği parayı çizer; kaldıraç büyüdükçe aynı pozisyon için kilitlenen tutar küçülür.

openTradeCommission()

Açık işlem komisyonu.

Açık işlemin şu ana kadar ödediği komisyon (yalnız giriş) — para birimi. Açık pozisyon yoksa na.

Not

Yalnız giriş komisyonudur (çıkış henüz gerçekleşmedi); tüm açık bacakların toplamı, kalan miktar üzerinden. Kayma (slip) hariç.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
plot(openTradeCommission(), "Açık komisyon")

Açık pozisyonun şu ana kadar ödediği giriş komisyonunu verir (pozisyon yoksa na).

openTradeEntryBar()

Açık işlemin giriş bar indeksi.

Açık pozisyonun giriş bar indeksini döndürür; flat ise na.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(openTradeEntryBar(), "Açık Giriş Barı")

Açık pozisyonun giriş bar sırasını çizer.

openTradeEntryComment()

Açık işlem giriş notu.

Açık işlemin GİRİŞ notu — `enterLong/enterShort(comment="…")` ile yazılan metin. comment verilmemişse boş metin döner.

Not

Yorum takibi yok; boş metin.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
label(close, openTradeEntryComment())

Boş metin döner.

openTradeEntryId()

Açık işlem giriş id'si.

Açık işlemin GİRİŞ emri kimliği — `enterLong/enterShort(id="…")` ile verilen metin. id verilmemişse boş metin döner.

Not

Kimlik takibi yok; boş metin.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
label(close, openTradeEntryId())

Boş metin döner.

openTradeEntryPrice()

Açık işlemin giriş fiyatı.

Açık pozisyonun giriş fiyatını döndürür; flat ise na.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(openTradeEntryPrice(), "Açık Giriş")

Açık pozisyonun giriş fiyatını çizer.

openTradeEntryTime()

Açık işlemin giriş zamanı (epoch ms).

Açık pozisyonun giriş zamanını (epoch ms) döndürür; flat ise na.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(openTradeEntryTime(), "Açık Giriş Zamanı")

Açık pozisyonun giriş zamanını çizer.

openTradeMaxDrawdown()

Açık işlem maks. düşüş.

Açık işlemin şu ana kadar gördüğü en kötü geri-çekilme (MAE) — para birimi. Açık pozisyon yoksa na.

Not

SAF fiyat-hareketidir: komisyon/carry HARİÇ. Açık pozisyon boyunca 'şimdiye kadarki en kötü' kümülatif değer; okunan barın düşük/yükseği de katılır. Kaldıraç/marj dahil. Başka platformların rakamlarıyla birebir örtüşmeyebilir; fark bu ölçüt seçiminden gelir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
plot(openTradeMaxDrawdown(), "Açık MAE")

Açık pozisyonun şu ana kadarki en kötü para-cinsinden geri-çekilmesini verir (pozisyon yoksa na).

openTradeMaxDrawdownPercent()

Açık işlem maks. düşüş (%).

Açık işlemin şu ana kadarki en kötü geri-çekilmesi (MAE) — yüzde. Açık pozisyon yoksa na.

Not

SAF fiyat-hareketidir: komisyon/carry HARİÇ. Açık pozisyon boyunca kümülatif 'en kötü' yüzde; okunan barın düşük/yükseği de katılır. Kaldıraç dahil (kâr/zarar yüzdesiyle aynı ölçek). Başka platformların rakamlarıyla birebir örtüşmeyebilir; fark bu ölçüt seçiminden gelir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
plot(openTradeMaxDrawdownPercent(), "Açık MAE %")

Açık pozisyonun şu ana kadarki en kötü geri-çekilme yüzdesini verir (pozisyon yoksa na).

openTradeMaxRunup()

Açık işlem maks. yükseliş.

Açık işlemin şu ana kadar ulaştığı en iyi yükseliş (MFE) — para birimi. Açık pozisyon yoksa na.

Not

SAF fiyat-hareketidir: komisyon/carry HARİÇ. Açık pozisyon boyunca 'şimdiye kadarki en iyi' kümülatif değer; okunan barın yüksek/düşüğü de katılır. Kaldıraç/marj dahil. Başka platformların rakamlarıyla birebir örtüşmeyebilir; fark bu ölçüt seçiminden gelir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
plot(openTradeMaxRunup(), "Açık MFE")

Açık pozisyonun şu ana kadarki en iyi para-cinsinden yükselişini verir (pozisyon yoksa na).

openTradeMaxRunupPercent()

Açık işlem maks. yükseliş (%).

Açık işlemin şu ana kadarki en iyi yükselişi (MFE) — yüzde. Açık pozisyon yoksa na.

Not

SAF fiyat-hareketidir: komisyon/carry HARİÇ. Açık pozisyon boyunca kümülatif 'en iyi' yüzde; okunan barın yüksek/düşüğü de katılır. Kaldıraç dahil (kâr/zarar yüzdesiyle aynı ölçek). Başka platformların rakamlarıyla birebir örtüşmeyebilir; fark bu ölçüt seçiminden gelir.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
plot(openTradeMaxRunupPercent(), "Açık MFE %")

Açık pozisyonun şu ana kadarki en iyi yükseliş yüzdesini verir (pozisyon yoksa na).

openTradeProfit()

Açık işlem gerçekleşmemiş kâr (tahmini).

Açık pozisyonun gerçekleşmemiş kâr/zararını PARA cinsinden döndürür (unrealized% × başlangıç / 100); flat ise na.

Not

Yüzde için `openTradeProfitPercent()`.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(openTradeProfit(), "Açık K/Z")

Açık pozisyonun para cinsi gerçekleşmemiş K/Z'sini çizer.

openTradeProfitPercent()

Açık işlem gerçekleşmemiş kâr %'si.

Açık pozisyonun gerçekleşmemiş kâr/zararını YÜZDE olarak döndürür; flat ise na.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(openTradeProfitPercent(), "Açık %")

Açık pozisyonun yüzde gerçekleşmemiş K/Z'sini çizer.

openTradeSize()

Açık işlem yönü/büyüklüğü.

Açık pozisyonun yönünü döndürür: +1 uzun, −1 kısa, 0 flat.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(openTradeSize(), "Açık Yön")

Açık pozisyon yönünü çizer.

openTradesCount()

Açık işlem sayısı (0/1).

Açık işlem sayısını döndürür: pozisyon varsa 1, flat ise 0.

Not

En çok tek açık işlem modellenir (piramitleme seviyelerine göre ayrışmaz).

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(openTradesCount(), "Açık İşlem")

Açık pozisyon olup olmadığını (1/0) çizer.

openTradesFirstIndex()

Açık işlem listesinin ilk sırası. Bu yapıda işlem geçmişi hiç kırpılmaz (üst sınır yok), bu yüzden her zaman 0 döner. referans dil'dan taşınan `for i = openTradesFirstIndex() to openTradesCount() - 1` biçimindeki döngüler olduğu gibi çalışsın diye vardır.

Açık işlem listesinin ilk sırası. Bu yapıda işlem geçmişi hiç kırpılmaz (üst sınır yok), bu yüzden her zaman 0 döner. `for i = openTradesFirstIndex() to openTradesCount() - 1` biçiminde yazılan döngüler, ileride kırpma eklenirse de doğru çalışsın diye vardır.

CODESCRIPT
plot(openTradesFirstIndex())

Açık işlem listesinin ilk sırasını çizer.

order(condition, direction?)

Genel emir (yön: long/short).

Değer döndürmez; `entryMarket` ile birebir aynı — koşul-true barında piyasa emri yönlendirir.

condition
bool
true olan barlarda piyasa (market) emriyle pozisyona girilir.
direction
string
İsteğe bağlı. "short"/"sat" ya da false → kısa; aksi halde uzun (varsayılan uzun).

Not

`entryMarket`'in eş adıdır. İkisi de aynı çekirdeği (enterLong/enterShort) çağırır.

CODESCRIPT
order(crossover(close, sma(close, 20)))

Kesişim barında uzun piyasa emri.

position()

O bardaki pozisyon yönünü verir: uzunsa +1, kısaysa -1, pozisyon yoksa 0. Bir göstergeyi pozisyona göre renklendirmek ya da yalnız pozisyon varken hesap yapmak için kullanılır. Miktarı değil yönü söyler.

Bar başına pozisyon yönü: +1 long, -1 short, 0 flat.

Not

Yalnız YÖNÜ verir (büyüklük değil). Büyüklük/giriş parçası için positionSize.

Ne zaman kullanılır

Pozisyon yönüne göre renklendirme ya da filtre için (örn. long iken mumu yeşile boya).

Sınırlar

Yalnız +1/-1/0; kaç giriş parçası açık olduğunu göstermez.

Uygun değildir

Kaç giriş parçası açık olduğunu ya da büyüklüğü öğrenmek için uygun değil — yalnız yönü (+1/-1/0) verir; büyüklük için positionSize kullanın. Pozisyon açmak/kapatmak da bu fonksiyonla olmaz; enterLong/enterShort/exit kullanın. Yönden bağımsız bir işaret çizmek istiyorsanız plotshape daha uygundur.

BTCUSDT5dk62,502-0.32%position vs positionSize62,29862,40862,51862,62862,73762,502Alt pano — turuncu: yön · mavi: açık giriş parçası sayısı
CODESCRIPT
enterLong(crossover(close,sma(close,20)))
exit(crossunder(close,sma(close,20)))
barcolor(iff(position() > 0, "#26a69a", na))

Long taşınan barlarda mumlar yeşil; flat barlar boyanmaz.

CODESCRIPT
enterLong(crossover(close,sma(close,20)))
plot(position(), "yön", "#ff9800")

Alt panoda 0/+1 arası basamaklı yön çizgisi.

positionAvg()

Açık pozisyonun giriş fiyatı (flat'te boş).

Açık pozisyonun ortalama giriş fiyatını döndürür; pozisyon yokken (flat) na.

Not

Flat iken na döner — kullanmadan önce `position() != 0` ile guard'la.

Ne zaman kullanılır

Açık pozisyona göre stop/hedef seviyesi hesaplamak için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(positionAvg(), "Giriş Fiyatı")

Açık pozisyonun giriş fiyatını çizer.

positionSize()

Pozisyon büyüklüğü/yönü (+/-).

Yön × açık giriş parçalarının kalan miktar toplamı (kesirli olabilir).

Not

position() yalnız yön verirken positionSize açık giriş parçası sayısı ve kısmi kapanışları yansıtır: 3 giriş parçası → +3, %50 kapanınca +2.5.

Ne zaman kullanılır

Piramitleme ya da kısmi çıkışın etkisini izlemek için (kaç birim açık kaldı).

Sınırlar

Mutlak lot/kontrat değil; giriş parçası-oranı bazlı bir büyüklüktür.

Uygun değildir

Gerçek lot/kontrat adedi beklediğiniz yerde uygun değil — giriş parçası-oranı bazlı bir büyüklük verir, borsa emri boyutu değil. Yalnız yön (long/short/flat) lazımsa position() daha sadedir. Pozisyon açıp kapatma bu fonksiyonla yapılmaz; onlar için enterLong/enterShort/exit kullanın.

BTCUSDT5dk62,502-0.32%position vs positionSize62,29862,40862,51862,62862,73762,502Alt pano — turuncu: yön · mavi: açık giriş parçası sayısı
CODESCRIPT
pyramiding(3)
enterLong(rsi(close,14)<40, id='L')
exit(rsi(close,14)>60)
plot(positionSize(), "boyut", "#2962ff")

Alt panoda basamak: +1→+2→+3, çıkışta 0.

CODESCRIPT
enterLong(barIndex==0, id='L')
exit(barIndex==10, fromEntry='L', qtyPct=50)
plot(positionSize(), "kalan", "#2962ff")
exit(barIndex==40)

10. barda %50 kısmi çıkış → boyut +1'den +0.5'e düşer.

runupPct()

Running maksimum yükseliş (%).

O ana kadarki en düşük sermaye dibinden yükselişi (run-up) yüzde olarak döndürür.

Ne zaman kullanılır

Stratejinin lehte hareket potansiyelini ölçmek için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(runupPct(), "Yükseliş %")

Koşan yükseliş yüzdesini çizer.

scan(condition, title?, score?, note?)

Son barda koşul true ise tarama satiri uretir. v0.1: yalnizca calisma ciktisi; Avci/persist henuz bagli degil.

Değer döndürmez; son barda koşul sağlanırsa bir tarama satırı üretir.

condition
bool
Son barda sağlanırsa tarama satırı üretilir.
title
string
İsteğe bağlı. Tarama satırının başlığı.
score
number
İsteğe bağlı. Sıralama için skor.
note
string
İsteğe bağlı. Ek açıklama.

Not

v0.1: yalnız çalışma çıktısı; tarayıcı/kalıcı kayıt sonraki fazda bağlanacak.

CODESCRIPT
scan(close > sma(close, 20), title="MA ustu", score=roc(close, 1))

Son barda fiyat 20 barlık ortalamanın üstündeyse sembolü tarama sonucuna ekler; satır "MA üstü" başlığıyla görünür ve son barın yüzde değişimine göre sıralanır.

tradeBars(n)

n. işlemin bar süresi.

n. kapanan işlemin kaç bar sürdüğünü döndürür.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeBars(0), "Bar Süresi")

İlk işlemin bar süresini çizer.

tradeCount()

Kapanan işlem sayısı (skaler).

Kapanan toplam işlem sayısını (skaler) döndürür.

Not

`closedTradesCount()` bunun eş adıdır. Seri değil, o-anki toplam sayıdır.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeCount(), "İşlem Sayısı")

Şu ana dek kapanan işlem sayısını çizer.

tradeEntryPrice(n)

n. işlemin giriş fiyatı (0-tabanlı; -1=son).

n. kapanan işlemin giriş fiyatını döndürür.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeEntryPrice(0), "İlk Giriş")

İlk kapanan işlemin giriş fiyatını çizer.

tradeEntryTime(n)

n. işlemin giriş zamanı (epoch ms).

n. kapanan işlemin giriş zamanını (epoch ms) döndürür.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeEntryTime(0), "Giriş Zamanı")

İlk işlemin giriş zamanını çizer.

tradeExitPrice(n)

n. işlemin çıkış fiyatı.

n. kapanan işlemin çıkış fiyatını döndürür.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeExitPrice(0), "İlk Çıkış")

İlk kapanan işlemin çıkış fiyatını çizer.

tradeExitTime(n)

n. işlemin çıkış zamanı (epoch ms).

n. kapanan işlemin çıkış zamanını (epoch ms) döndürür.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeExitTime(0), "Çıkış Zamanı")

İlk işlemin çıkış zamanını çizer.

tradeProfit(n)

n. işlemin net % kâr/zararı.

n. kapanan işlemin kâr/zararını YÜZDE olarak döndürür (pnl%).

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan -1 (sonuncu)).

Not

Birim YÜZDEDİR, para değil. Para birimiyle isterseniz `closedTradeProfit(n)` kullanın.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeProfit(0), "İlk K/Z %")

İlk işlemin yüzde kâr/zararını çizer.

tradeSize(n)

n. işlemin boyut oranı.

n. kapanan işlemin yön/büyüklüğünü döndürür.

n
number
Kapanan işlemin 0-tabanlı indeksi; negatif sondan sayar (varsayılan 0).
CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(tradeSize(0), "Yön")

İlk işlemin yönünü çizer.

winTrades()

Kazanan işlem sayısı (running).

O ana kadar kazançla kapanan işlem sayısını koşan seri olarak döndürür.

Ne zaman kullanılır

Kazanma oranı (winTrades/closedTrades) hesaplamak için.

CODESCRIPT
enterLong(crossover(close, sma(close, 10)))
exit(crossunder(close, sma(close, 10)))
plot(winTrades(), "Kazanan")

Kümülatif kazanan işlem sayısını çizer.

evenTrades()

Başabaş (kâr sıfır) kapanan işlem sayısı (running).

O ana kadar BAŞABAŞ (kâr sıfır) kapanan işlem sayısını koşan seri olarak döndürür.

Ne zaman kullanılır

Kazanan + kaybeden + başabaş = kapalı işlem kimliğini doğrulamak ve kazanma oranını başabaş işlemleri saymadan hesaplamak için.

CODESCRIPT
plot(evenTrades())

Başabaş kapanan, yani ne kâr ne zarar bırakan işlemlerin sayısını çizer.