สวัสดีครับ คุณ sanunchat สำหรับโค้ดตัว % หุ้นขาขึ้นนั้นผมขออธิบาย Concept คร่าวๆดังนี้แล้วกันครับ โดยมีตัวอย่างโค้ดดังนี้ครับ
/*=============================================================
Step 1 : Define UpTrendStock & AddToComposite by Exploration
=============================================================*/
UpTrendStock = C > MA( C, 200 );
AddToComposite( UpTrendStock, “~UpTrendStock”, “C”, atcFlagDefaults | atcFlagResetValues | atcFlagEnableInExplore );
AddToComposite( 1, “~TotalStock”, “C”, atcFlagDefaults | atcFlagResetValues | atcFlagEnableInExplore );
คำอธิบาย : ขั้นตอนแรก เราจะการเก็บจำนวนหุ้นขาขึ้น เรา Define โดยราคาปิดอยู่เหนือ MA 200 แล้วทำการ AddToComposite เข้าไปใน Symbol ชื่อ ~UpTrendStock และจำนวนหุ้นทั้งหมดเก็บใน Symbol ชื่อ ~TotalStock ด้วยการ Exploration กับ WatchList AllStock นะครับ
/*=============================================================
Step 2 : Get Value by Foreign
=============================================================*/
UpTrendStock = Foreign( “~UpTrendStock”, “C”, FixUp = False );
TotalStock = Foreign( “~TotalStock”, “C”, FixUp = False );
คำอธิบาย : ขั้นตอนที่ 2 หลังจากกด Exploration แล้ว เราจะเขียนโค้ดให้ไปดึงค่าจำนวนทั้ง 2 ที่ต้องการออกมา
/*=============================================================
Step 3 : Visualization
=============================================================*/
upTrendRatio = ( UpTrendStock / TotalStock ) * 100;
Plot( upTrendRatio , “upTrendRatio”, colorRed );
คำอธิบาย : ขั้นตอนที่ 3 หลังจากได้ค่าทั้ง 2 เรียบร้อยแล้ว เราจะหาสัดส่วนหุ้นขาขึ้นได้จาก upTrendRatio = ( UpTrendStock / TotalStock ) * 100; แล้วลอง Visualize ค่าดู ก็เป็นอันเรียบร้อยแล้ว
หมายเหตุ : โค้ดชุดนี้อาจจะไม่ได้ผลลัพธ์เหมือนกับในบทความเป๊ะๆนะครับ เนื่องจากในบทความจะมีการเขียนโค้ดเพิ่มเติมในกรณีที่วันนั้นๆหุ้นไม่มีการเทรดหรือมีช่องว่างของราคาซึ่งรายละเอียดจะมากและวุ่นวายกว่านี้ครับ โดยที่ผลลัพธ์ต่างกันนิดเดียวเท่านั้นครับ ^^