memang sih informasi dari om Bill S di milist sebelah Brightspark ini mirip dengan Ord_Volume yang menghitung dari swing volume, tapi saya lihat sekilas bentuknya gak mirip dengan Brightspark. lagipula komponen penyusun ord volume ini menggunakan indikator Zig-zag => ekornya gak konsisten.
Berikut ini AFL Ord Volume, mungkin ada yang bisa bantu dimana perbedaannya dengan Brightspark dan bisa dibuatkan AFLnya.. ////////////////////////////////////////////////////////////Mulai dari sini ////////////////////////////////////////////////////////////// /* Ord Volume by Peter Bjarheim Rev - 11-12-07 Adjust "zig percent change" so that each swing last from 5 to 30 days (the the percentage, the more sigificant the swing is). Peak Volume Extreme Detection: ->Sometimes several days around the true swing price extreme, a higher volume extreme has been encountered. Back testing suggests that these swing volumes while rare, do occur and are significant. ----> Rules For Trading from http://www.ord-oracle.com/ This software is designed to pick out the swings in a stock and then measure the force between the swings. The force is the amount of volume between the swings that pushes the stock in an up-mode or down-mode. Stocks trend in the direction of the highest volume. Stocks correct or consolidate on lighter volume. By measuring the volume between the swings and comparing to previous swings, one can "See" the force of a particular move developing in the stock. In an uptrend the stock should have higher volume on the rally phase than the correction phase. In a downtrend the stock should have higher volume on the declining phase than the up correction phase. With that in mind, we have developed this software to do just that. Keep in mind that this software measures volume force in a stock and is not implied to be a stand-alone tool to pick every turn in a stock. The Ord-volume software is designed to help identify the probable direction by the volume flow the stock has. Other factors of the stock may push it in a different direction. 1. To pick the strongest stock (in up-trend), average daily volume should shrink near 50% on correction phase compared to the rally phase. 2. To pick the weakest stocks (in down-trend) average daily volume should shrink near 50% on up phase compared to the declining phase. Definition of a "Swing". A "Swing" is a price high or low where the stock changes direction. Definition of "Ord-Volume". "Ord-volume" measures the average volume between "Swings". Definition of "Ord-Volume Low". "Ord-Volume Low" is a down-leg in a stock. Definition of "Ord-Volume High". "Ord-Volume High" is an up-leg in a stock. 3. A buy signal is triggered when a stock closes above a previous important "Ord-Volume low" where the current "Ord-volume low" shrinks near 50% or greater against the "Important "Ord-volume low"". An "Important "Ord-volume Low" is when that low marks a bottom where the equity starts a sideways consolidation. 4. A sell signal is triggered when a stock closes below a previous important "Ord-Volume High" where the current "Ord-Volume High" shrinks near 50% or greater against the "Important "Ord-Volume High"". An "Important "Ord-Volume High"" is when that high marks a top where the equity starts a sideways consolidation. 5. Target price Projections: 5.1 An upside target for a buy signal will be the previous "Swing High". If volume is equal or greater on the test of the previous high then the next higher swing high will be the target and so on. 5.2 A downside target after a sell signal will be the previous "Swing Low". If volume is equal or greater than the previous "Swing Low" then the next lower swing will be the target and so on. */ swingDays = 0; swingVol = 0; ordVol = 0; upswingSignal = 0; downswingSignal = 0; accumulatedVolume = 0; accumulatedDays = 0; arrayHasSignal = 0; zigPercentage = Param("ZigZag Percent", 10, 2, 50); trendZig = Zig(C, zigPercentage); action = Status("action"); midPointY = 0; midPointValue = 0; peakVolumeExtremeDetectionDays = Param("Peak Vol. Days", 6, 1, 20); //3 days before and 3 days after a peak daysBeforeAndAfterForPeakVolume = round(peakVolumeExtremeDetectionDays/2); peakVolume = 0; colorOrdVolume = ParamColor("Ord Vol. Info.", colorGrey50); colorZig = ParamColor("ZigZag", colorGold); colorPeakUp = ParamColor("Support Info.", colorGreen); colorPeakDown = ParamColor("Resistance Info.", colorRed); scalingFactor = 0.1; function volumeInMillions(inVolume) { volInM = inVolume/1000000; return NumToStr(volInM, 1.2, False) + " m"; } function getPeakVolume(daysToCheck, nowDay) { returnPeakVolume = V[nowDay]; dayNumberBefore = (nowDay) - daysToCheck; dayNumberAfter = (nowDay) + daysToCheck; //find Max swing Volume if( dayNumberBefore > 0 AND dayNumberAfter < BarCount ) { returnPeakVolume = V[dayNumberBefore]; //_TRACE("Start returnPeakVolume = " + returnPeakVolume); for( j = dayNumberBefore; j < dayNumberAfter; j++ ) { if(returnPeakVolume < V[j]) { returnPeakVolume = V[j]; } //_TRACE("returnPeakVolume = " + returnPeakVolume); } } else if( dayNumberBefore > 0 AND dayNumberAfter >= BarCount ) { returnPeakVolume = V[dayNumberBefore]; //_TRACE("Start returnPeakVolume = " + returnPeakVolume); for( j = dayNumberBefore; j < BarCount; j++ ) { if(returnPeakVolume < V[j]) { returnPeakVolume = V[j]; } //_TRACE("returnPeakVolume = " + returnPeakVolume); } } else { peakVolume = V[i-1]; } return returnPeakVolume; } for( i = 3; i < BarCount; i++) { //initialize parameters arrayHasSignal[i] = 0; //Then we check which way the price goes swingVol = swingVol + V[i-1];//Don't add today since price may have changed direction swingDays = swingDays + 1; if( (trendZig[i] < trendZig[i-1]) AND (trendZig[i-1] > trendZig[i-2]) AND i > 10 )//Changes from up swing to down swing { /*_TRACE("Changes from up swing to down swing, i = " + i); _TRACE("trendZig[i-2] = " + trendZig[i-2]); _TRACE("trendZig[i-1] = " + trendZig[i-1]); _TRACE("trendZig[i] = " + trendZig[i]);*/ downswingSignal[i-1] = 0; upswingSignal[i-1] = 1; ordVol[i-1] = swingVol/swingDays; accumulatedVolume[i-1] = swingVol; accumulatedDays[i-1] = swingDays; arrayHasSignal[i-1] = 1; if(action == actionIndicator) { midPointValue = i - round(swingDays/2) - 1; midPointY = trendZig[midPointValue]; peakVolume = getPeakVolume(daysBeforeAndAfterForPeakVolume, i - 1); PlotText("(" + volumeInMillions(ordVol[i-1]) + ")", midPointValue, midPointY, colorOrdVolume); PlotText(NumToStr(H[i-1], 1.1, False) + " (" + volumeInMillions(peakVolume) + ")", i-4, trendZig[i-1] * 1.02, colorPeakUp); } swingVol = 0; swingDays = 0; } if( (trendZig[i] > trendZig[i-1]) AND (trendZig[i-1] < trendZig[i-2]) AND i > 10 )//Changes from down swing to up swing { downswingSignal[i-1] = 1; upswingSignal[i-1] = 0; ordVol[i-1] = swingVol/swingDays; accumulatedVolume[i-1] = swingVol; accumulatedDays[i-1] = swingDays; arrayHasSignal[i-1] = 1; if(action == actionIndicator) { midPointValue = i - round(swingDays/2) - 1; midPointY = trendZig[midPointValue]; peakVolume = getPeakVolume(daysBeforeAndAfterForPeakVolume, i - 1); PlotText("(" + volumeInMillions(ordVol[i-1]) + ")", midPointValue, midPointY, colorOrdVolume); PlotText(NumToStr(L[i-1], 1.1, False) + " (" + volumeInMillions(peakVolume) + ")", i-4, trendZig[i-1] * 0.95, colorPeakDown); } swingVol = 0; swingDays = 0; } if( i == BarCount - 1)//add last signal too { swingVol = swingVol + V[i];//Remember to add today also swingDays = swingDays + 1; if(trendZig[i] < trendZig[i-1])//is down swing { downswingSignal[i] = 1; upswingSignal[i] = 0; ordVol[i] = swingVol/swingDays; accumulatedVolume[i] = swingVol; accumulatedDays[i] = swingDays; arrayHasSignal[i] = 1; } if(trendZig[i] > trendZig[i-1])//is up swing { downswingSignal[i] = 0; upswingSignal[i] = 1; ordVol[i] = swingVol/swingDays; accumulatedVolume[i] = swingVol; accumulatedDays[i] = swingDays; arrayHasSignal[i] = 1; } if(action == actionIndicator) { midPointValue = i - round(swingDays/2) - 1; midPointY = trendZig[midPointValue]; PlotText("(" + volumeInMillions(ordVol[i]) + ")", midPointValue, midPointY, colorOrdVolume); } } } if(action == actionExplore) { //Filter = 1; Filter = arrayHasSignal; //AddColumn(trendZig , "trendZig ", 1.2); AddColumn(C, "Swing Up", 1.2, colorDefault, IIf(upswingSignal, colorPeakUp, colorDefault)); AddColumn(C, "Swing Down", 1.2, colorDefault, IIf(downswingSignal, colorPeakDown, colorDefault)); AddColumn(ordVol, "Ord Vol.", 1.0); AddColumn(accumulatedDays, "Swing Days", 1.0); AddColumn(accumulatedVolume, "Tot. Swing Vol.", 1.0); } else if(action == actionIndicator) { Plot(trendZig, "Ord Vol ZigZag", colorZig); //Scale the axis so we can read the numbers Plot(trendZig + (trendZig * scalingFactor), "", colorRed, styleNoDraw); Plot(trendZig - (trendZig * scalingFactor), "", colorBlue, styleNoDraw); } ///////////////selesai//////////////////////////// --- Pada Sel, 2/2/10, prassat...@yahoo.com <prassat...@yahoo.com> menulis: Dari: prassat...@yahoo.com <prassat...@yahoo.com> Judul: Re: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Kepada: amibroker-4-bei@yahoogroups.com Tanggal: Selasa, 2 Februari, 2010, 1:51 AM Brangkat dr ide brightspark sy coba buat indikator tsb bertugas menghitung avg vol n total vol stiap leg, leg di dpt dr hitungan supp ress ga pake zig lagi. Metode analisa nya hampir sama sperti ordvolume sehingga analisa nya hanya ke price n volume relationship. Yah iseng2 aja buat mainan sendiri....Powered by Telkomsel BlackBerry®From: doni edward <kosegu...@yahoo. com> Date: Tue, 2 Feb 2010 14:36:47 +0800 (SGT)To: <amibroker-4- b...@yahoogroups. com>Subject: Re: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Betul Pak Alfatih, Zig-zag memang tidak bisa dipakai untuk trading. Ekornya suka bergerak sendiri. Memang bila dilihat ke masa lalu grafiknya indah banget, bisa mendeteksi puncak & lembah dengan akurat tapi entah kalau untuk mendeteksi pergerakan yang akan datang. Tapi kalau komponen utama penyusun indikator tersebut menggunakan indikator Zig-zag, yah saya ragu akan ke ampuhan indikator Brightspark ini. --- Pada Sel, 2/2/10, M Alfatih <alfatih.aati@ gmail.com> menulis: Dari: M Alfatih <alfatih.aati@ gmail.com> Judul: Re: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Kepada: amibroker-4- b...@yahoogroups. com Tanggal: Selasa, 2 Februari, 2010, 1:16 AM hmm...mm... zigzag ya..?zigzag tidak bisa dipakai trading...sebab, memang dia muncul setelah terbentuk puncak, bahkan kalau muncul puncak baruzigzagnya bisa pindah tempat... 2010/2/2 doni edward <kosegu...@yahoo. com> saya sudah coba browsing di internet, tapi sepertinya sangat minim sekali pembahasan mengenai Brightspark ini. Dan satu-satunya sumber hanya dari website tersebut & file PPT yang sudah saya attach pada email sebelumnya. pergerakan swing/zig-zag gergajinya sepertinya mengikuti pergerakan harga, tapi bagaimana caranya dia bisa mendeteksi puncak dan lembah secara presisi sedangkan fraktalnya alligator saja butuh 3 hari untuk dapat mendeteksi puncak atau lembah. lalu bagaimana juga caranya membuat zig-zag seperti seperti mata gergaji bukan seperti gelombang (wave), bingung saya.. (maklum ilmu AFLnya gak terlalu jago) Untuk sekedar menghitung aliran uang yang masuk/keluar suatu saham sih sudah bisa sekarang dimilist2 dikenal dengan istilah Money Flow. Menurut saya AFL ini sedikit unik.. hehehe.. Salam --- Pada Sen, 1/2/10, Eko Widjajanto <ekow...@gmail. com> menulis: Dari: Eko Widjajanto <ekow...@gmail. com> Judul: RE: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Kepada: amibroker-4- b...@yahoogroups. com Tanggal: Senin, 1 Februari, 2010, 11:39 PM Pak Doni, punya teorinya yang agak jelas? Kalau ada mestinya dibuat afl-nya. From: amibroker-4- b...@yahoogroups. com [mailto:amibroker- 4-...@yahoogroup s.com] On Behalf Of prassat...@yahoo. com Sent: Tuesday, February 02, 2010 11:34 AM To: amibroker-4- b...@yahoogroups. com Subject: Re: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Its for commercil bos... Dan itu add on nya metastock Powered by Telkomsel BlackBerry® From: doni edward <kosegu...@yahoo. com> Date: Tue, 2 Feb 2010 12:23:40 +0800 (SGT) To: <amibroker-4- b...@yahoogroups. com> Subject: Re: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool sudah di cek pak, tapi kok gak ada AFL-nya --- Pada Sen, 1/2/10, sAThya® <prassat...@yahoo. com> menulis: Dari: sAThya® <prassat...@yahoo. com> Judul: Re: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Kepada: amibroker-4- b...@yahoogroups. com Tanggal: Senin, 1 Februari, 2010, 10:51 PM pak coba check di : http://analisahambe i.blogspot. com Rgdz Sathya From: Eko Widjajanto <ekow...@gmail. com> To: amibroker-4- b...@yahoogroups. com Sent: Tue, February 2, 2010 9:10:57 AM Subject: RE: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Saya tidak punya Pak Edward. Belum sempat mempelajari, masih bulan madu dengan buaya. Dari milis Amibroker juga belum ada jawab ya? Mudah-mudahan Tomaz dan teman-temannya bisa melihat merit dari Brightspark ini dan membuat aflkan-nya Salam, From: amibroker-4- b...@yahoogroups. com [mailto:amibroker- 4-...@yahoogroup s.com] On Behalf Of doni edward Sent: Tuesday, February 02, 2010 8:46 AM To: amibroker-4- b...@yahoogroups. com Subject: Bls: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE-Brightspark Swing Volume Tool Dear pak Eko, Bagaimana dengan AFL Brightspark Swing Volume Tool apakah bapak punya AFL tersebut? note : mungkin bapak sudah baca di milis sebelah. Sebelumnya terimakasih --- Pada Sen, 1/2/10, Eko Widjajanto <ekow...@gmail. com> menulis: Dari: Eko Widjajanto <ekow...@gmail. com> Judul: [Komunitas AmiBroker] AFL ALLIGATOR FOR FREE Kepada: amibroker-4- b...@yahoogroups. com Tanggal: Senin, 1 Februari, 2010, 6:21 AM Untuk pengguna Amibroker dan mendambakan alligatornya Bill William, silahkan klik http://www.wisestoc ktrader.com/ indicators. Gratis, tis, tis. Kalau kemudian mau diskusi silahkan posting di milis ini. Di sana juga ada seratusan afl lainnya. Salam, Eko Kunjungi halaman depan Yahoo! Indonesia yang baru! Berselancar lebih cepat. Internet Explorer 8 yang dioptimalkan untuk Yahoo! otomatis membuka 2 halaman favorit Anda setiap kali Anda membuka browser.Dapatkan IE8 di sini! (Gratis) Dapatkan alamat Email baru Anda! Dapatkan nama yang selalu Anda inginkan sebelum diambil orang lain! Akses email lebih cepat. Yahoo! menyarankan Anda meng-upgrade browser ke Internet Explorer 8 baru yang dioptimalkan untuk Yahoo! Dapatkan di sini! (Gratis) Akses email lebih cepat. Yahoo! menyarankan Anda meng-upgrade browser ke Internet Explorer 8 baru yang dioptimalkan untuk Yahoo! Dapatkan di sini! http://downloads.yahoo.com/id/internetexplorer