rumus saham

This commit is contained in:
sas.fajri
2025-05-01 16:51:10 +07:00
parent 0dad7613d0
commit 06e8fd93fd
2 changed files with 928 additions and 0 deletions

View File

@@ -0,0 +1,361 @@
Panduan Penulisan Kriteria pada Screener
Posted on November 6, 2016 by admin
Pada update aplikasi Data Saham Indonesia versi 1.3.03 1.3.05 kami menambah fitur Stock Screener dan Stock Scoring.
Artikel ini akan membahas tata cara penulisan kriteria pada Stock Screener dan Stock Scoring.
Stock Screener
Stock Scoring
Kriteria pada screener dinyatakan dalam rumus matematika yang disebut Boolean Expression (BE).
Boolean Expression (BE) adalah ekpresi/pernyataan logika yang akan diproses sistem dan akan menghasilkan dua kemungkinan nilai, yaitu: nilai benar (true), atau nilai salah (false).
Contoh:
4 == 4 ==> true
4 == 3 + 1 ==> true
4 > 5 ==> false
true and false ==> false
true or false ==> true
4 == 4 and 4 == 3 + 1 ==> true
(catatan: tanda == adalah operator untuk menyatakan persamaan nilai)
Proses screener akan menghitung rumus Boolean Expression pada kriteria yang di-input, terhadap seluruh saham yang terdaftar di bursa BEI (saat ini berjumlah 617 saham) dan menampilkan saham-saham yang menghasilkan nilai benar (true).
Contoh:
prev hourly close <= current hourly close
==> menampilkan saham-saham yang nilai close pada candle hourly sebelumnya lebih kecil atau sama dengan nilai close pada candle hourly saat ini.
prev hourly close <= current hourly close AND hourly close >= hourly sma("close", 5)
==> (sama dgn kriteria sebelumnya) DAN close diatas MA5 hourly
Rumus pada screener criteria bersifat fleksibel dan dapat berbentuk rumus sederhana seperti:
open < close
maupun rumus kompleks seperti:
hourly high > prev hourly hhv("high", 100) and
hourly close > hourly open and
index macd_histogram > 0 and
high < bollinger_top
Boolean Expression dan Arithmetic Expression merupakan turunan dari Expression. Arithmetic Expression adalah suatu ekpresi/pernyataan yang akan menghasilkan satu nilai dalam himpunan bilangan real. Expression sendiri didefinisikan sebagai “apapun yang menghasilkan satu nilai”.
Hierarki dari Expression adalah sebagai berikut:
Expression :
Boolean Expression (BE)
Boolean Value : true , false
Bracket Expression : ( BE )
Boolean Operation : and, or, not
Arithmetic Comparison : >= , <= , > , < , == , !=
Arithmetic Expression (E)
Numeric Expression
Arithmetic Operation : * , / , + ,
Bracket Expression : ( E )
Stock Expression
(catatan: pada dokumen ini dan pada criteria composer kami menggunakan notasi E sebagai singkatan untuk Arithmetic Expression)
Bagian yang cukup penting dari kriteria screener adalah Stock Expression, yang merupakan turunan dari Arithmetic Expression.
Struktur dari Stock Expression adalah sebagai berikut:
E: stock_expression: [candle_selector] [timeframe] [target] <stock_attr>
E: stock_expression: [candle_selector] [timeframe] [target] <stock_function>
E: stock_expression: <stock_fundamental_attr>
E: stock_expression: <bid_offer_variables>
candle_selector: prev_N, ..., prev_3, prev_2, prev, current
default: current
Candle Selector
timeframe: monthly, weekly, daily, hourly, 15min, 5min, 1min
default: daily
target: stock, sector, index
default: stock
stock_attr:
open, high, low, close, volume
macd, macd_signal, macd_histogram
rsi, stoch_k, stoch_d, stochrsi, atr, adx, pdx, ndx, cci, uo, roc, william_r, mfi, cmf
up_fractal, down_fractal
alligator_jaw, alligator_teeth, alligator_lips, alligator_ao, alligator_ac
bollinger_top, bollinger_bottom, bollinger_mean, bollinger_bandwidth, bollinger_percent_b, bollinger_percent_b_avg
value, top_broker, foreign, top_broker_hist, foreign_hist
dto_stochk, dto_stochd, obv, sar
pivot_s1, pivot_s2, pivot_s3, pivot_r1, pivot_r2, pivot_r3
mid_price, tick
stock_function:
sma(n), sma(subformula,n)
ema(n), ema(subformula,n)
highest(subformula,n), hhv(subformula,n)
lowest(subformula,n), llv(subformula,n)
ranking(subformula,n)
ranking_per_sector(subformula,n)
roc(n)
macd(fast_period,slow_period)
macd_signal(fast_period,slow_period,signal_period)
macd_histogram(fast_period,slow_period,signal_period)
sum(subformula,n)
vwap(n)
cci(n)
atr(n)
adx(n)
pdx(n)
ndx(n)
stoch_k(lookback_period,k_period)
stoch_d(lookback_period,k_period,d_period)
bollinger_top(period, multiplier)
bollinger_bottom(period, multiplier)
bollinger_mean(period, multiplier)
bollinger_bandwidth(period, multiplier)
bollinger_percent_b(period, multiplier)
bollinger_percent_b_avg(period, multiplier)
rsi(n)
stochrsi(period,dtostoch_period,dtostoch_k_period,dtostoch_d_period)
dto_stochk(period,dtostoch_period,dtostoch_k_period,dtostoch_d_period)
dto_stochd(period,dtostoch_period,dtostoch_k_period,dtostoch_d_period)
mfi(n)
cmf(n)
Parameter yang memiliki nilai default boleh tidak ditulis (tidak disertakan) dalam penulisan. Dalam hal Stock Expression hanya parameter stock_attr yang wajib ditulis.
Contoh:
current daily stock close == close ==> true
current daily stock close == daily close ==> true
current daily stock close == stock close ==> true
current daily stock close == current daily close ==> true
Tetapi ketika parameter ditulis, maka urutan penulisan harus sesuai dengan struktur yang sudah ditetapkan diatas.
Contoh:
stock daily close ==> error
daily current close ==> error
current daily close ==> OK
Parameter target terdiri dari 3 nilai yaitu: stock, sector, index
stock : menyatakan target yang dipilih adalah chart dari saham yang bersangkutan, misal untuk saham TLKM dan BMRI : target stock akan memilih chart saham TLKM dan BMRI.
sector : menyatakan target yang dipilih adalah chart dari index sectoral, misal untuk saham TLKM dan BMRI : target sector akan memilih chart dari index INFRA dan FINANCE.
index : menyatakan target yang dipilih adalah chart index composite dari saham yang bersangkutan, misal untuk saham TLKM dan BMRI : target index akan memilih chart COMPOSITE (^JKSE)
Berikut definisi stock_attr:
open, high, low, close, volume : nilai open, high, low, close, volume dari chart candlestick saham
macd, macd_signal, macd_histogram : nilai dari chart MACD(12,26,9) , macd_histogram = macd macd_signal
rsi : nilai dari chart RSI(14)
stoch_k, stoch_d : nilai dari chart Stochastic(15,3,3)
stochrsi : nilai dari chart StochRSI(9,6)
atr : nilai dari chart ATR(14)
adx, pdx, ndx : nilai dari chart ADX(14)
cci : nilai dari chart CCI(14)
uo : nilai dari chart UO(7,14,28)
roc : nilai dari chart ROC(12)
william_r : nilai dari chart WilliamsR(14)
mfi : nilai dari chart MFI(14)
cmf : nilai dari chart CMF(21)
alligator_jaw, alligator_teeth, alligator_lips, alligator_ao, alligator_ac : nilai dari chart Alligator(13,8,5)
bollinger_top, bollinger_bottom, bollinger_mean, bollinger_bandwidth, bollinger_percent_b, bollinger_percent_b_avg : nilai dari chart Bollinger(20,2)
value : total nilai transaksi saham
top_broker : akumulasi dari transaksi top broker (current top_broker = prev top_broker + current top_broker_hist)
foreign : akumulasi dari transaksi foreign (current foreign = prev foreign + current foreign_hist)
top_broker_hist : nilai dari chart histogram transaksi top broker (dalam satuan lembar saham)
foreign_hist : nilai dari chart histogram transaksi foreign (dalam satuan lembar saham)
dto_stochk, dto_stochd : nilai dari chart DTOStoch(8,5,3)
obv :
sar : nilai dari chart SAR(0.02,0.2)
pivot_s1, pivot_s2, pivot_s3, pivot_r1, pivot_r2, pivot_r3 :
mid_price : mid_price = (high + low) / 2
tick : nilai fraksi harga saham (harga < 200 : 1 ; harga 200-500 : 2 ; harga 500-2000 : 5 ; harga 2000-5000 : 10; harga > 5000 : 25)
vwap : vwap = (high + low + close) / 3
top_broker_hist = [5 top net buyer] [5 top net seller]
stock_function merupakan fungsi dari stock_attr, berikut definisi stock_function:
sma("<stock_attr>",N) : simple moving average dari suatu stock_attr sejumlah N bar
Contoh:
sma("close", 5) ==> MA5 dari nilai close daily
hourly sma("volume", 20) ==> MA20 dari nilai volume hourly
ema("<stock_attr>",N) : exponential moving average dari suatu stock_attr sejumlah N bar
Contoh:
ema("close", 5) ==> EMA5 dari nilai close daily
hourly ema("volume", 20) ==> EMA20 dari nilai volume hourly
highest("<stock_attr>",N) :
hhv("<stock_attr>",N) : highest value/nilai tertinggi dari suatu stock_attr sejumlah N bar
Contoh:
daily hhv("high", 5) ==> 5 day highest high daily
hourly hhv("close", 5) ==> 5 hour highest close hourly
lowest("<stock_attr>",N) :
llv("<stock_attr>",N) : lowest value/nilai terendah dari suatu stock_attr sejumlah N bar
Contoh:
daily llv("low", 5) ==> 5 day lowest low daily
hourly llv("close", 5) ==> 5 hour lowest close hourly
ranking("<stock_attr>",N) : ranking nilai stock_attr dari seluruh saham, dengan ranking 1 adalah nilai tertinggi dari stock_attr, jika diinginkan urutan dari terendah ke tertinggi kalikan stock_attr dengan -1
Contoh:
ranking("value") <= 10 ==> filter saham-saham top 10 value
ranking("roc") <= 10 ==> filter saham-saham yang memiliki 10 nilai ROC tertinggi
ranking("roc * -1") <= 10 ==> filter saham-saham yang memiliki 10 nilai ROC terendah
roc(period) : nilai dari chart Rate of Change (ROC)
Contoh:
roc(12) ==> nilai roc(12)
macd(fast_period,slow_period) :
macd_signal(fast_period,slow_period,signal_period) :
macd_histogram(fast_period,slow_period,signal_period) : nilai dari chart macd, macd_signal, dan macd_histogram
Contoh:
macd(12, 26) ==> nilai macd(12, 26)
macd_signal(12, 26, 9) ==> nilai macd signal(12, 26, 9)
macd_histogram(12, 26, 9) ==> nilai macd histogram(12, 26, 9)
sum("<stock_attr>",N) : jumlah dari stock_attr sejumlah N bar
Contoh:
sum("foreign", 5) ==> jumlah foreign accumulation 5 hari terakhir
vwap(N) : nilai dari chart indikator Volume-Weighted Average Price (VWAP)
Formula:
vwap(N) = sum("volume * (high + low + close) / 3", N) / sum("volume", N)
Contoh:
vwap(5) nilai vwap dengan periode 5 hari terakhir
atr(period) : nilai dari chart Average True Range (ATR)
Contoh:
atr(14) ==> nilai garis atr(14)
adx(period) : nilai dari chart Average Directional Index (ADX)
Contoh:
adx(14) ==> nilai garis adx(14)
pdx(14) ==> nilai garis DI+ pada indikator adx(14)
ndx(14) ==> nilai garis DI- pada indikator adx(14)
cci(period) : nilai dari chart Commodity Channel Index (CCI)
Contoh:
cci(20) ==> nilai cci(20)
stoch_k(lookback_period,k_period) :
stoch_d(lookback_period,k_period,d_period) : nilai dari chart Stochastic Oscillator
Contoh:
stock_k(15, 3) ==> nilai Stochastic %K(15, 3)
stock_d(15, 3, 3) ==> nilai Stochastic %D(15, 3, 3)
bollinger_top(period, multiplier) :
bollinger_bottom(period, multiplier) :
bollinger_mean(period, multiplier) :
bollinger_bandwidth(period, multiplier) :
bollinger_percent_b(period, multiplier) :
bollinger_percent_b_avg(period, multiplier) : nilai dari chart Bollinger Bands
Contoh:
bollinger_top(20, 2) ==> nilai Bollinger Band top line(20, 2)
bollinger_bottom(20, 2) ==> nilai Bollinger Band bottom line(20, 2)
rsi(n) : nilai dari chart indikator Relative Strength Index (RSI)
Contoh:
rsi(14) ==> nilai garis indikator rsi(14)
stochrsi(period,dtostoch_period,dtostoch_k_period,dtostoch_d_period)
dto_stochk(period,dtostoch_period,dtostoch_k_period,dtostoch_d_period)
dto_stochd(period,dtostoch_period,dtostoch_k_period,dtostoch_d_period) : nilai dari chart indikator StochRSI
Contoh:
stochrsi(14, 8, 5, 3) ==> nilai garis indikator stochrsi(14, 8, 5, 3)
dto_stochk(14, 8, 5, 3) ==> nilai garis %K indikator stochrsi(14, 8, 5, 3)
dto_stochd(14, 8, 5, 3) ==> nilai garis %D indikator stochrsi(14, 8, 5, 3)
stock_fundamental_attr:
debt_equity, ebitda, ebitda_anl, eps, eps_anl
ev_ebitda, ev_ebitda_anl, market_cap, netprofit, netprofit_anl
pbv, pbv_anl, per, per_anl, revenue, revenue_anl
roa, roa_anl, roe, roe_anl
debt_equity : Debt to Equity Ratio
ebitda : Earnings Before Interest, Taxes, Depreciation and Amortization (lastest financial report)
ebitda_anl : Earnings Before Interest, Taxes, Depreciation and Amortization (annualized)
eps : Earning Per Share (lastest financial report)
eps_anl : Earning Per Share (annualized)
ev_ebitda : Enterprise Multiple (lastest financial report)
ev_ebitda_anl : Enterprise Multiple (annualized)
market_cap : Market Capitalization
netprofit : Net Profit (lastest financial report)
netprofit_anl : Net Profit (annualized)
pbv : Price-to-Book Ratio (lastest financial report)
pbv_anl : Price-to-Book Ratio (annualized)
per : Price-Earnings Ratio (lastest financial report)
per_anl : Price-Earnings Ratio (annualized)
revenue : Revenue (lastest financial report)
revenue_anl : Revenue (annualized)
roa : Return on assets (lastest financial report)
roa_anl : Return on assets (annualized)
roe : Return on Equity (lastest financial report)
roe_anl : Return on Equity (annualized)
bid_offer_variables:
top1_bid_volume, top1_bid_count, top1_offer_volume, top1_offer_count
top3_bid_volume, top3_bid_count, top3_offer_volume, top3_offer_count
top5_bid_volume, top5_bid_count, top5_offer_volume, top5_offer_count
top10_bid_volume, top10_bid_count, top10_offer_volume, top10_offer_count
all_bid_volume, all_bid_count, all_offer_volume, all_offer_count
Bid Offer Variables
top1_bid_volume : total volume pada bid di harga terbaik (lembar)
top1_bid_count : jumlah order pada bid di harga terbaik
top1_offer_volume : total volume pada offer di harga terbaik (lembar)
top1_offer_count : jumlah order offer di harga terbaik
top3_bid_volume : total volume pada bid di 3 harga terbaik (lembar)
top3_bid_count : jumlah order pada bid di 3 harga terbaik
top3_offer_volume : total volume pada offer di 3 harga terbaik (lembar)
top3_offer_count : jumlah order offer di 3 harga terbaik
top5_bid_volume : total volume pada bid di 5 harga terbaik (lembar)
top5_bid_count : jumlah order pada bid di 5 harga terbaik
top5_offer_volume : total volume pada offer di 5 harga terbaik (lembar)
top5_offer_count : jumlah order offer di 5 harga terbaik
top10_bid_volume : total volume pada bid di 10 harga terbaik (lembar)
top10_bid_count : jumlah order pada bid di 10 harga terbaik
top10_offer_volume : total volume pada offer di 10 harga terbaik (lembar)
top10_offer_count : jumlah order offer di 10 harga terbaik
all_bid_volume : total volume pada bid di semua harga (lembar)
all_bid_count : jumlah order pada bid di semua harga
all_offer_volume : total volume pada offer di semua harga (lembar)
all_offer_count : jumlah order offer di semua harga
bid_volume(n) : volume pada bid di harga terbaik ke-n, dimana n: 1,2,3,…
bid_count(n) : jumlah order pada bid di harga terbaik ke-n, dimana n: 1,2,3,…
offer_volume(n) : volume pada offer di harga terbaik ke-n, dimana n: 1,2,3,…
offer_count(n) : jumlah order pada offer di harga terbaik ke-n, dimana n: 1,2,3,…
sum_bid_volume(n) : total volume pada bid di n harga terbaik
sum_bid_count(n) : jumlah order pada bid di n harga terbaik
sum_offer_volume(n) : total volume pada offer di n harga terbaik
sum_offer_count(n) : jumlah order pada offer di n harga terbaik
Beberapa variable lain yang bisa di coba antara lain:
(note untuk memeriksa nilai variable, atau mengetes formula bisa menggunakan menu “Formula Evaluator”)
best_bid_price : harga bid (penawaran beli) tertinggi/terbaik saham
best_offer_price : harga offer (penawaran jual) terendah/terbaik saham
top1_bid_volume : total volume pada bid di harga terbaik (lembar)
top1_bid_count : jumlah order pada bid di harga terbaik
top3_bid_volume : total volume pada bid di 3 harga terbaik (lembar)
top3_bid_count : jumlah order pada bid di 3 harga terbaik
top5_bid_volume : total volume pada bid di 5 harga terbaik (lembar)
top5_bid_count : jumlah order pada bid di 5 harga terbaik
top10_bid_volume : total volume pada bid di 10 harga terbaik (lembar)
top10_bid_count : jumlah order pada bid di 10 harga terbaik
all_bid_volume : total volume pada bid di semua harga (lembar)
all_bid_count : jumlah order pada bid di semua harga
top1_offer_volume : total volume pada offer di harga terbaik (lembar)
top1_offer_count : jumlah order pada offer di harga terbaik
top3_offer_volume : total volume pada offer di 3 harga terbaik (lembar)
top3_offer_count : jumlah order pada offer di 3 harga terbaik
top5_offer_volume : total volume pada offer di 5 harga terbaik (lembar)
top5_offer_count : jumlah order pada offer di 5 harga terbaik
top10_offer_volume : total volume pada offer di 10 harga terbaik (lembar)
top10_offer_count : jumlah order pada offer di 10 harga terbaik
all_offer_volume : total volume pada offer di semua harga (lembar)
all_offer_count : jumlah order pada offer di semua harga
blot : volume transaksi yang terjadi pada harga bid (terjadi ha-ki) dalam satuan lot
slot : volume transaksi yang terjadi pada harga offer (terjadi ha-ka) dalam satuan lot
bvol : volume transaksi yang terjadi pada harga bid (terjadi ha-ki) dalam satuan lembar
svol : volume transaksi yang terjadi pada harga offer (terjadi ha-ka) dalam satuan lembar
bfreq : frequensi transaksi yang terjadi pada harga bid (terjadi ha-ki)
sfreq : frequensi transaksi yang terjadi pada harga offer (terjadi ha-ka)
all_buy_volume : sama dengan bvol
all_sell_volume : sama dengan svol
all_buy_freq : sama dengan bfreq
all_sell_freq : sama dengan sfreq
broker_buyer_count : jumlah broker yang melakukan pembelian
broker_seller_count : jumlah broker yang melakukan penjualan
net_broker_buyer_count : jumlah broker yang melakukan pembelian bersih
net_broker_seller_count : jumlah broker yang melakukan penjualan bersih
top1_net_broker_buyer_volume : total volume saham pembelian bersih 1 broker teratas dalam lembar
top1_net_broker_buyer_value : nilai transaksi saham pembelian bersih 1 broker teratas
top1_net_broker_buyer_avg_price : harga rata-rata saham pembelian bersih 1 broker teratas
top3_net_broker_buyer_volume : total volume saham pembelian bersih 3 broker teratas dalam lembar
top3_net_broker_buyer_value : nilai transaksi saham pembelian bersih 3 broker teratas
top3_net_broker_buyer_avg_price : harga rata-rata saham pembelian bersih 3 broker teratas
top5_net_broker_buyer_volume : total volume saham pembelian bersih 5 broker teratas dalam lembar
top5_net_broker_buyer_value : nilai transaksi saham pembelian bersih 5 broker teratas
top5_net_broker_buyer_avg_price : harga rata-rata saham pembelian bersih 5 broker teratas
top10_net_broker_buyer_volume : total volume saham pembelian bersih 10 broker teratas dalam lembar
top10_net_broker_buyer_value : nilai transaksi saham pembelian bersih 10 broker teratas
top10_net_broker_buyer_avg_price : harga rata-rata saham pembelian bersih 10 broker teratas
top1_net_broker_seller_volume : total volume saham penjualan bersih 1 broker teratas dalam lembar
top1_net_broker_seller_value : nilai transaksi saham penjualan bersih 1 broker teratas
top1_net_broker_seller_avg_price : harga rata-rata saham penjualan bersih 1 broker teratas
top3_net_broker_seller_volume : total volume saham penjualan bersih 3 broker teratas dalam lembar
top3_net_broker_seller_value : nilai transaksi saham penjualan bersih 3 broker teratas
top3_net_broker_seller_avg_price : harga rata-rata saham penjualan bersih 3 broker teratas
top5_net_broker_seller_volume : total volume saham penjualan bersih 5 broker teratas dalam lembar
top5_net_broker_seller_value : nilai transaksi saham penjualan bersih 5 broker teratas
top5_net_broker_seller_avg_price : harga rata-rata saham penjualan bersih 5 broker teratas
top10_net_broker_seller_volume : total volume saham penjualan bersih 10 broker teratas dalam lembar
top10_net_broker_seller_value : nilai transaksi saham penjualan bersih 10 broker teratas
top10_net_broker_seller_avg_price : harga rata-rata saham penjualan bersih 10 broker teratas
*sebagai pelengkap terdapat juga variable transaksi broker yang belum net (tanpa menggunakan kata net) sbb:
top1_broker_buyer_volume, top3_broker_buyer_volume, top5_broker_buyer_volume, top10_broker_buyer_volume,
top1_broker_seller_volume, top3_broker_seller_volume, top5_broker_seller_volume, top10_broker_seller_volume,
Contoh-contoh formula screener:
higher high higher low :
prev high < high and prev low < low
inside bar :
prev high > high and prev low < low
golden cross MA 5-20 (garis MA 5 memotong keatas MA 20) :
prev sma(5) < prev sma(20) and sma(5) > sma(20)
MACD naik :
prev macd < macd and macd > 0
three white soldier :
prev_2 close > prev_2 open
and prev close > prev open
and close > open
daftar 10 saham tertinggi akumulasi berdasarkan nilai top-5-net-broker-accumulation :
ranking("top_broker_hist * daily_price_avg") <= 10

567
FOLDER/rumus_datasaham.md Normal file
View File

@@ -0,0 +1,567 @@
# Screener Saham - Ranging dengan Akumulasi Bandar
## Deskripsi
Screener ini digunakan untuk mendeteksi saham-saham yang:
1. Bergerak ranging (sideways) selama 1 bulan
2. Mengalami akumulasi oleh bandar selama periode ranging
3. Melakukan breakout di minggu terakhir
## Rumus Screener
// 1. Deteksi kondisi ranging
monthly bollinger_bandwidth(20,2) < 0.1
AND
// 2. Deteksi breakout minggu terakhir
weekly close > prev_4 hhv("high", 20)
AND
weekly volume > weekly sma("volume", 20)
AND
// 3. Deteksi akumulasi bandar
sum("top_broker_hist", 20) > 0
AND
sum("top5_net_broker_buyer_volume", 20) > sum("top5_net_broker_seller_volume", 20) * 1.5
AND
net_broker_buyer_count > net_broker_seller_count
AND
top3_bid_volume > top3_offer_volume * 1.2
## Penjelasan Komponen
### 1. Deteksi Ranging
- Menggunakan Bollinger Bandwidth yang sempit (< 0.1)
- Periode: 20 hari
- Timeframe: Monthly
### 2. Deteksi Breakout
- Harga close diatas high tertinggi 20 periode sebelumnya
- Volume diatas rata-rata 20 periode
- Timeframe: Weekly
### 3. Deteksi Akumulasi
- Net akumulasi broker positif selama 20 periode
- Volume beli broker top 5 > 1.5× volume jual
- Jumlah broker pembeli > broker penjual
- Volume bid top 3 > 1.2× volume offer
## Parameter yang Bisa Disesuaikan
1. Periode Bollinger (default: 20)
2. Threshold bandwidth (default: 0.1)
3. Periode akumulasi (default: 20)
4. Rasio volume beli-jual (default: 1.5)
5. Rasio bid-offer (default: 1.2)
## Catatan
- Screener ini cocok untuk mencari saham-saham yang sedang diakumulasi dan berpotensi melakukan trend naik
- Disarankan untuk tetap melakukan analisa fundamental sebelum mengambil keputusan trading
- Parameter bisa disesuaikan dengan karakteristik saham dan timeframe trading yang diinginkan
---
# Screener Saham - Akumulasi Asing Tanpa Kenaikan Signifikan
## Deskripsi
Screener ini digunakan untuk mendeteksi saham-saham yang:
1. Diakumulasi oleh investor asing selama 1 bulan
2. Harga masih bergerak sideways (belum naik signifikan)
3. Potensi breakout di masa mendatang
## Rumus Screener
// 1. Deteksi akumulasi asing bulanan
sum("foreign_hist", 20) > 0
AND
sum("foreign", 20) > sum("foreign", 60) * 0.4
AND
// 2. Pastikan harga belum naik signifikan
abs((close - prev_20 close) / prev_20 close) < 0.1
AND
bollinger_percent_b(20,2) < 0.7
AND
// 3. Volume transaksi asing signifikan
sum("foreign_hist", 5) > sum("volume", 5) * 0.2
AND
// 4. Konfirmasi akumulasi berkelanjutan
prev_5 foreign > 0
AND
prev_10 foreign > 0
## Penjelasan Komponen
### 1. Deteksi Akumulasi Asing
- Net akumulasi asing positif selama 20 hari
- Akumulasi 20 hari > 40% akumulasi 60 hari (menunjukkan peningkatan minat)
- Timeframe: Daily
### 2. Deteksi Harga Sideways
- Perubahan harga < 10% dalam 20 hari
- Harga masih dibawah 70% band Bollinger
- Menghindari saham yang sudah naik signifikan
### 3. Konfirmasi Volume Asing
- Volume asing > 20% total volume dalam 5 hari
- Akumulasi konsisten (positif) dalam 5 dan 10 hari terakhir
## Parameter yang Bisa Disesuaikan
1. Periode akumulasi (default: 20 hari)
2. Threshold perubahan harga (default: 10%)
3. Minimum rasio volume asing (default: 20%)
4. Periode konfirmasi akumulasi (default: 5 dan 10 hari)
## Catatan
- Screener ini cocok untuk mencari saham yang sedang diakumulasi asing secara diam-diam
- Perhatikan juga fundamental emiten dan sentimen sektoral
- Bisa dikombinasikan dengan screener akumulasi bandar untuk konfirmasi
---
# Screener Saham - Akumulasi Bandar dengan Breakout MA20
## Deskripsi
Screener ini digunakan untuk mendeteksi saham-saham yang:
1. Diakumulasi oleh bandar (broker besar)
2. Baru saja breakout dari MA20
3. Konfirmasi volume dan momentum
## Rumus Screener
// 1. Deteksi breakout MA20
close > sma("close", 20)
AND
prev close < prev sma("close", 20)
AND
// 2. Deteksi akumulasi bandar
sum("top_broker_hist", 10) > 0
AND
sum("top5_net_broker_buyer_volume", 10) > sum("top5_net_broker_seller_volume", 10) * 1.3
AND
// 3. Konfirmasi volume breakout
volume > sma("volume", 20) * 1.5
AND
close > open
AND
// 4. Momentum dan tekanan beli
macd_histogram(12,26,9) > 0
AND
rsi(14) > 50
AND
top3_bid_volume > top3_offer_volume
## Penjelasan Komponen
### 1. Deteksi Breakout MA20
- Harga close diatas MA20
- Hari sebelumnya masih dibawah MA20
- Menandakan baru breakout
### 2. Deteksi Akumulasi Bandar
- Net akumulasi broker positif 10 hari
- Volume beli broker top 5 > 1.3× volume jual
- Timeframe: Daily
### 3. Konfirmasi Volume
- Volume > 1.5× rata-rata 20 hari
- Candlestick bullish (close > open)
- Menunjukkan kekuatan breakout
### 4. Konfirmasi Momentum
- MACD Histogram positif
- RSI diatas 50
- Volume bid lebih besar dari offer
## Parameter yang Bisa Disesuaikan
1. Periode MA (default: 20)
2. Periode akumulasi (default: 10 hari)
3. Rasio volume beli-jual (default: 1.3)
4. Multiplier volume breakout (default: 1.5)
5. Level RSI (default: 50)
## Catatan
- Screener ini cocok untuk mencari momentum awal breakout
- Perhatikan resistance terdekat diatas MA20
- Ideal untuk swing trading jangka pendek-menengah
- Kombinasikan dengan price action untuk entry yang lebih presisi
---
# Screener Saham - Candlestick Bullish di Support
## Deskripsi
Screener ini digunakan untuk mendeteksi saham-saham yang:
1. Membentuk pola candlestick bullish
2. Terjadi di area support (MA50/MA200/Previous low)
3. Konfirmasi volume dan momentum
## Rumus Screener
// 1. Deteksi candlestick bullish
close > open
AND
(close - low) > (high - close) * 2
AND
body_length > sma("body_length", 20)
AND
// 2. Deteksi area support
(
// Support MA50
low <= sma("close", 50) * 1.02
AND
close > sma("close", 50)
OR
// Support MA200
low <= sma("close", 200) * 1.02
AND
close > sma("close", 200)
OR
// Support previous low
low <= llv("low", 20) * 1.02
AND
close > llv("low", 20)
)
AND
// 3. Konfirmasi volume
volume > sma("volume", 20)
AND
volume > prev volume * 1.5
AND
// 4. Momentum positif
rsi(14) > 40
AND
macd_histogram(12,26,9) > prev macd_histogram(12,26,9)
## Penjelasan Komponen
### 1. Deteksi Candlestick Bullish
- Close diatas Open (candlestick hijau)
- Lower shadow 2× lebih panjang dari upper shadow
- Body candle lebih besar dari rata-rata
- Menandakan rejection di bawah (hammer/bullish engulfing)
### 2. Deteksi Area Support
- Dekat dengan MA50 atau MA200 (toleransi 2%)
- Atau dekat dengan low terendah 20 hari
- Close harus diatas support
- Timeframe: Daily
### 3. Konfirmasi Volume
- Volume diatas rata-rata 20 hari
- Volume meningkat dari hari sebelumnya
- Menunjukkan minat beli yang kuat
### 4. Konfirmasi Momentum
- RSI diatas 40 (tidak oversold)
- MACD Histogram meningkat
- Menandakan momentum mulai positif
## Parameter yang Bisa Disesuaikan
1. Rasio shadow (default: 2)
2. Toleransi support (default: 2%)
3. Periode support (default: MA50/MA200)
4. Multiplier volume (default: 1.5)
5. Level RSI (default: 40)
## Catatan
- Screener ini cocok untuk mencari bounce/rebound dari support
- Perhatikan juga resistance terdekat untuk R:R ratio
- Ideal untuk swing trading dengan hold 3-5 hari
- Lebih akurat jika dikombinasikan dengan trend yang masih bullish
---
# Screener Saham - BSJP (Beli Sore Jual Pagi)
## Deskripsi
Screener ini digunakan untuk mendeteksi saham-saham yang:
1. Berpotensi naik di hari berikutnya
2. Akumulasi di sesi 2 (sore)
3. Tekanan beli kuat menjelang close
4. Volume dan momentum mendukung
## Rumus Screener
// 1. Deteksi akumulasi sesi 2
close > vwap(1)
AND
close > sma("close", 5)
AND
close >= hhv("close", 1)
AND
// 2. Tekanan beli kuat
top5_bid_volume > top5_offer_volume * 1.8
AND
net_broker_buyer_count > net_broker_seller_count * 1.2
AND
top3_bid_volume > sum("volume", 1) * 0.1
AND
// 3. Volume meningkat sesi 2
volume > sma("volume", 5)
AND
volume > prev volume
AND
// 4. Momentum dan sentimen
rsi(14) < 75
AND
macd_histogram(12,26,9) > 0
AND
stoch_k(14,3) > stoch_d(14,3,3)
AND
// 5. Tidak ada gap up signifikan
(high - prev close) / prev close < 0.05
AND
// 6. Konfirmasi broker besar
sum("top_broker_hist", 1) > 0
AND
top5_net_broker_buyer_volume > top5_net_broker_seller_volume
## Penjelasan Komponen
### 1. Deteksi Akumulasi Sesi 2
- Close diatas VWAP hari ini
- Close diatas MA5
- Close di level tertinggi hari ini
- Menandakan kekuatan di akhir sesi
### 2. Tekanan Beli
- Volume bid jauh lebih besar dari offer
- Lebih banyak broker pembeli
- Volume bid signifikan dari total volume
- Timeframe: End of Day
### 3. Konfirmasi Volume
- Volume diatas rata-rata 5 hari
- Volume meningkat dari hari sebelumnya
- Menunjukkan minat beli yang kuat
### 4. Momentum dan Sentimen
- RSI belum overbought
- MACD Histogram positif
- Stochastic golden cross
- Masih ada ruang untuk naik
### 5. Faktor Tambahan
- Tidak ada gap up besar (menghindari profit taking)
- Ada akumulasi broker besar
- Net buy dari top 5 broker
## Parameter yang Bisa Disesuaikan
1. Rasio bid-offer (default: 1.8)
2. Minimum volume bid (default: 10% total volume)
3. Level RSI maximum (default: 75)
4. Maximum gap up (default: 5%)
5. Periode MA (default: 5)
## Catatan
- Screener ini khusus untuk trading BSJP (Beli Sore Jual Pagi)
- Perhatikan jam terakhir trading untuk konfirmasi
- Sebaiknya dijalankan 30 menit sebelum close
- Cut loss jika gap down di hari berikutnya
- Ideal untuk saham dengan likuiditas tinggi
---
# Screener Saham - Kenaikan Konsisten dan Stabil
## Deskripsi
Screener ini digunakan untuk mendeteksi saham-saham yang:
1. Mengalami kenaikan konsisten tapi tidak agresif (5-10% per hari)
2. Tidak ada distribusi besar dari bandar
3. Volume stabil dan meningkat secara wajar
4. Trend kenaikan sehat dan berkelanjutan
## Rumus Screener
// 1. Deteksi kenaikan konsisten
close > prev close
AND
close > sma("close", 5)
AND
sma("close", 5) > sma("close", 20)
AND
(close - prev_5 close) / prev_5 close <= 0.10
AND
(close - prev_5 close) / prev_5 close >= 0.03
AND
// 2. Deteksi tidak ada distribusi bandar
sum("top_broker_hist", 5) > 0
AND
sum("top5_net_broker_seller_volume", 5) < sum("volume", 5) * 0.3
AND
net_broker_seller_count < net_broker_buyer_count
AND
// 3. Volume stabil dan wajar
volume > sma("volume", 10) * 0.8
AND
volume < sma("volume", 10) * 2
AND
sma("volume", 5) > sma("volume", 20)
AND
// 4. Trend sehat
rsi(14) > 45 AND rsi(14) < 70
AND
macd_histogram(12,26,9) > 0
AND
bollinger_percent_b(20,2) > 0.3 AND bollinger_percent_b(20,2) < 0.8
AND
// 5. Konfirmasi tidak ada tekanan jual
top5_offer_volume < sum("volume", 1) * 0.2
AND
close > vwap(1)
## Penjelasan Komponen
### 1. Deteksi Kenaikan Konsisten
- Harga naik dari hari sebelumnya
- Diatas MA5 dan MA20 (uptrend)
- Kenaikan 5 hari: 3-10%
- Menghindari kenaikan terlalu agresif
### 2. Tidak Ada Distribusi
- Net akumulasi broker masih positif
- Volume jual broker besar < 30% total volume
- Lebih banyak broker pembeli
- Timeframe: Daily
### 3. Volume Stabil
- Volume dalam range wajar (0.8-2× rata-rata)
- Trend volume meningkat secara sehat
- Menghindari volume spike
### 4. Trend Sehat
- RSI tidak oversold/overbought (45-70)
- MACD Histogram positif
- Harga dalam channel Bollinger normal
- Menunjukkan trend sehat
### 5. Konfirmasi Tekanan
- Tidak ada tekanan jual besar
- Harga diatas VWAP
- Menandakan dominasi pembeli
## Parameter yang Bisa Disesuaikan
1. Range kenaikan 5 hari (default: 3-10%)
2. Threshold volume jual (default: 30%)
3. Range RSI (default: 45-70)
4. Range Bollinger %B (default: 0.3-0.8)
5. Multiplier volume (default: 0.8-2×)
## Catatan
- Screener ini cocok untuk swing trading jangka menengah
- Fokus pada saham dengan kenaikan bertahap dan sehat
- Ideal untuk saham dengan likuiditas menengah-tinggi
- Perhatikan support terdekat untuk stop loss
- Kombinasikan dengan analisa fundamental untuk hasil optimal
---
# Screener Saham - Potensi Gorengan (High Risk)
## Deskripsi
Screener ini digunakan untuk mendeteksi saham-saham yang:
1. Menunjukkan pola awal penggorengan
2. Volume mulai meningkat drastis
3. Ada akumulasi dari broker-broker tertentu
4. Harga masih di level rendah dengan likuiditas mulai membaik
## Rumus Screener
// 1. Deteksi volume spike dan likuiditas
volume > sma("volume", 20) * 5
AND
volume > 500000
AND
prev_5 volume < sma("volume", 20) * 2
AND
// 2. Deteksi harga dan momentum awal
close > open * 1.15
AND
close > prev_5 close * 1.25
AND
close < 200
AND
prev_20 volume < 100000
AND
// 3. Deteksi akumulasi broker
sum("top_broker_hist", 3) > 0
AND
broker_buyer_count > prev_5 broker_buyer_count * 2
AND
top3_bid_volume > top3_offer_volume * 3
AND
// 4. Deteksi tekanan beli
all_bid_volume > all_offer_volume * 2
AND
top1_bid_volume > sum("volume", 1) * 0.2
AND
// 5. Momentum teknikal
rsi(14) > 60 AND rsi(14) < 85
AND
macd_histogram(12,26,9) > prev_5 macd_histogram(12,26,9) * 3
AND
stoch_k(14,3) > 80
## Penjelasan Komponen
### 1. Deteksi Volume Spike
- Volume melonjak 5× dari rata-rata
- Minimal volume 500rb lot
- Volume sebelumnya relatif sepi
- Menandakan awal akumulasi
### 2. Karakteristik Harga
- Kenaikan intraday > 15%
- Kenaikan 5 hari > 25%
- Harga masih dibawah 200
- Sebelumnya sangat tidak likuid
- Timeframe: Daily
### 3. Pola Broker
- Net akumulasi broker positif 3 hari
- Jumlah broker pembeli meningkat drastis
- Tekanan beli sangat dominan
- Menandakan pengumpulan
### 4. Tekanan Beli
- Total bid jauh lebih besar dari offer
- Ada bid besar di level terbaik
- Menunjukkan minat kuat
### 5. Momentum
- RSI mulai panas tapi belum ekstrem
- MACD Histogram melonjak
- Stochastic overbought
- Menandakan momentum kuat
## Parameter yang Bisa Disesuaikan
1. Multiplier volume spike (default: 5×)
2. Minimum volume (default: 500rb lot)
3. Target kenaikan (default: 15% intraday, 25% 5 hari)
4. Maximum harga (default: 200)
5. Rasio bid-offer (default: 2-3×)
## Catatan Penting (High Risk)
- Screener ini SANGAT BERISIKO, hanya untuk trader berpengalaman
- Selalu gunakan strict money management (1-2% modal)
- Siap cut loss jika gagal breakout
- Waspadai manipulasi harga dan volume
- Jangan serakah, take profit bertahap
- Hindari averaging down
- Perhatikan jam-jam rawan false breakout
- Tidak cocok untuk investor jangka panjang