diff --git a/FOLDER/datasahamindonesia.md b/FOLDER/datasahamindonesia.md new file mode 100644 index 0000000..663d609 --- /dev/null +++ b/FOLDER/datasahamindonesia.md @@ -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] +E: stock_expression: [candle_selector] [timeframe] [target] +E: stock_expression: +E: stock_expression: +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("",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("",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("",N) : +hhv("",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("",N) : +llv("",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("",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("",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 \ No newline at end of file diff --git a/FOLDER/rumus_datasaham.md b/FOLDER/rumus_datasaham.md new file mode 100644 index 0000000..34ddd37 --- /dev/null +++ b/FOLDER/rumus_datasaham.md @@ -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 +