Financial Coding
Financial Models with VBA and Python
Friday, July 8, 2016
Startup Events
สวัสดีครับทุกท่าน ต้องขอโทษด้วยที่ห่างหายไปซะนานเลย พอดีติดภารกิจ 108 1009 บวกกับต้องไปร่วมลองของในงาน Startup Battle (FinTech) ก็เลยไม่มีเวลามานั่งทำโพสเรื่อง Coding เลย
ไหนๆก็เกริ่นเกี่ยวกับเรื่องงาน Startup มานิดหน่อยแระ งั้นขออนุญาติเล่าถึงประสพการณ์ที่ได้ไปร่วมงานมาว่าเค้าทำอะไรกันบ้างในงาน แล้วทำไมช่วงนี้ทำไมถึงมีแต่คนพูดถึงแต่เจ้า Startup ตัวนี้กันจัง
ขออนุญาติไม่บรรยายเกี่ยวกับเจ้า Startup แล้วกันนะครับ เพราะสามารถหาข้อมูลเกี่ยวกับเรื่องนี้ได้อย่างมากมายเลย (เช่นลองอ่านดูจากที่นี่ก็ได้ครับ http://www.letsdoitsf.org/)
สำหรับสิ่งที่ได่ไปเจอมาจากงาน FinTech Battle ก็มีประมาณดังนี้ครับ
- การได้ร่วมทดลอง Pitching เสนอแนวความคิดของตัวเองที่มีต่อ Product ที่อยากทำ เพื่อชักชวนเพื่อนๆในงานให้เข้ามาร่วมสร้าง Product นั้นด้วยกัน
ปล. Product ของผมขี้เหล่มาก มีคนสงสาร vote ให้แค่สองคนเอง ...... ก็อดทำซิครับ
- หลังจากต้องพาร่างกายอันไร้พลังงานไปฝากเนื้อฝากตัวกับกลุ่มอื่นแล้ว ก็ได้เวลาแห่งการระดมสมอง (อันฝ่อ) เพื่อที่จะปลุกปั้น Product ของชาวบ้านขึ้นมาให้ได้ โดยในงานวันสุดท้าย (อีกสองวันถัดไป) จะมีการนำเสนอ Final Pitching เพื่อตัดสินหาผลงานที่ยอดเยี่ยมที่สุด
- 3วันผ่านไป ไวยังกะโกหก ในที่สุดผลงานของกลุ่มผมก็ถูกนำเสนอ ซึ่งถึงแม้พวกเราจะไม่ได้รางวัลอะไรเลย แต่ผมก็ได้เรียนรู้ขั้นตอนการทำงานในการปลุกปั้น Apps ตัวนึงขึ้นมา ก็ถือว่าเป็นประสพการณ์ที่มีค่ามากนะ แถมได้เจอคนเก่งๆ อีกเพียบ อ้อ...ลืมบอกไป คนที่ไปร่วมงานนี่ แบ่งเป็นสามกลุ่มหลักๆนะครับ คือ พวก Business Development (ผมก็จัดอยู่ในกลุ่มนี้) พวก Designer และสุดท้ายพวก Developer ไอเดียก็ประมาณแบ่งงานกันทำนั่นแหละครับ ซึ่งในที่นี้ก็คือ พัฒนาธุรกิจ ออกแบบ และสร้าง Product
ต้องยอมรับเลยครับว่า แรกๆผมไม่รู้ว่าคนในงานเค้าพูดภาษาอะไรกัน เหมือนผมมาจากต่างบ้านต่างเมืองเลยล่ะ แบบว่ามันมีศัพท์แปลกๆที่เค้าใช้ในวงการนี้ที่ผมไม่เคยได้ยินมาก่อน ซึ่งเยอะมาก แต่ผมก็พยายามเรียนรู้นะ
ช่วงสุดท้ายในงานจะเป็นช่วงเกี้ยวพาราสี ประมาณว่าใครสนใจฝีไม้ลายมือใคร อยากจะจีบใครไปร่วมงานด้วย ก็ช่วงนี้ล่ะ แล้วหลังงานก็ไปนัดเจอกันเอง (ไปตกลงค่าตัวกัน) ฟังดูหื่นเนอะ แต่จะว่าไปแล้วช่วงนี้ถือว่าเป็นช่วง highlight ของงานเลยก็ว่าได้ เพราะเท่าที่รู้ ส่วนใหญ่ก็มาร่วมงานด้วยเหตุผลนี้ เพราะว่ามันดีตรงที่ได้มาดูตัวก่อน และได้เห็นฝีไม้ลายมือบ้าง ดังนั้นก็เลยไม่แปลกที่หลายคนได้รับการสู่ขอหลังจบงานนี้
ก็ประมาณนี้ครับ event แนว startup ที่จะมีหัวใจหลักๆคือ Pitching กับ Networking
สำหรับใครที่สนใจงานแนวนี้ อยากจะลองคิด Product ของตัวเองขึ้นมาเพื่อพัฒนา ก็ลองหาข้อมูลดูนะครับว่ามีที่ไหนให้ไปลองฝีมือได้บ้าง รับรองช่วงนี้มีเยอะแน่นอน
Saturday, February 27, 2016
คัมภีร์ธุรกิจ 12 ฉบับ ที่คุณควรหามาอ่าน ณ บัด Now!
วันนี้ขออนุญาติพาออกนอกเรื่อง มาแนะนำหนังสือดีๆที่เกี่ยวกับแง่มุมของเรื่องธุรกิจกันซักหน่อยนะครับ ซึ่งหนังสือเหล่านี้ได้รับการแนะนำโดย Time (Magazine) อีกทั้งนักธุรกิจที่ประสพความสำเร็จอย่างสูงหลายๆท่าน ต่างแนะนำในเรื่องการหาความรู้และประสพการณ์จากการอ่านทั้งสิ้นลองมาดูกันครับว่าหนังสือเหล่านี้มีอะไรบ้าง (คลิ๊กที่ลิงค์เพื่อดูรายละเอียดหนังสือได้เลยครับ)
กลุ่ม Self-Improving
1. How to win friends & influence people โดย Dale Carnegie
2. Choose yourself! โดย James Altucher
กลุ่ม Leadership and Management
3. The Effective Executive โดย Peter F. Drucker
4. Turn This Ship Around! โดย L. David Marquet
กลุ่ม Strategy
5. The Innovator's Dilemma โดย Clayton M. Christensen
6. Competition Demystified โดย Bruce Greenwald และ Judd Kahn
กลุ่ม Marketing
7. Influence โดย Robert B. Cialdini
8. Purple Cow โดย Seth Godin
กลุ่ม Entrepreneurship
9. The Hard Thing About Hard Things โดย Ben Horowitz
10. Zero To One โดย Peter Thiel และ Blake Masters
กลุ่ม General Business
11. Business Model Generation โดย Alexander Osterwalder และ Yves Pigneur
12. The Essay of Warren Buffett โดย Warren Buffett และ Lawrence A. Cunningham
หวังว่าผู้อ่านจะลองหาซื้อมาอ่านกันสำหรับช่วงวันหยุดยาวที่กำลังจะมาถึงในอีกไม่นานนะครับ
Credit: Dan Dsombak/The Motley Fool จาก www.time.com/money, "12 Business Books You Should Read Right Now"
Thursday, February 25, 2016
ทักษะ 5 อย่างที่เป็นที่ต้องการ ถ้าหากคุณอยากร่วมงานกับ FinTech
สำหรับคนที่อาจจะยังไม่คุ้นกับคำว่า FinTech นะครับ FinTech ก็คือคำที่เรียกกันสั้นๆจากคำเต็มว่า Financial Technology ซึ่งถือว่าเป็น Sector ที่กำลังเติบโตเร็วที่สุดในอุตสาหกรรมด้านการให้บริการทางการเงิน ซึ่งบริษัทพวกนี้มักให้บริการในลักษณะ Online Financial Services หรือ Payment Processing แล้วทำไมเราถึงต้องให้ความสำคัญกับพวกบริษัท FinTech พวกนี้นะเหรอครับ ก็เพราะว่า พวก FinTech เหล่านี้ สามารถสร้างรายได้อย่างเป็นกอบเป็นกำ ซึ่งบริษัทยักษ์ใหญ่ทางด้านการเงินต่างๆ ไม่เว้นแม้แต่ Goldman Sachs ยังต้องสูญเสียรายได้มหาศาลให้กับบริษัท FinTech พวกนี้เลยครับ
งั้นเราลองมาดูกันว่า ทักษะในด้านใดกันบ้างที่บรรดาเหล่า FinTech ต้องการจากผู้ร่วมงาน
1. Java ถ้าหากว่าคุณอยากทำงานในสายงาน Banking Technology แล้วล่ะก็ จงฝึกฝน Java ซะ เพราะต้องยอมรับกันเลยว่า Java Developer ที่มีฝีมือเก่งจริงๆนั้น ไม่ได้หาตัวกันได้ง่ายๆเลย
2. Business Analyst หรือที่เรามักคุ้นกันในคำสั้นๆว่า BA ซึ่งคนกลุ่มนี้ถือได้ว่ามีส่วนเป็นอย่างมากต่อการกำหนดกลยุทธในโปรเจ็คต่างๆของบริษัทเป็นอย่างมาก โดยเฉพาะถ้าคุณเป็นคนที่มีความรู้ความเข้าใจในเรื่อง Future และ Option ของพวกสินทรัพย์ประเภทต่างๆเป็นอย่างดีแล้วล่ะก็ คุณก็มีโอกาสที่จะได้รับค่าตัวอย่างงามในบริษัทที่ทำโครงการเกี่ยวกับพวก Derivative Tech อย่างแน่นอน
3. C# สำหรับเจ้า C# นั้น ตลาดทางการเงินในขณะนี้ กำลังมีความต้องการ Developer ทางด้าน C# เพื่อนำเอาทักษะของพวกเค้าไปใช้ในการพัฒนา Tool สำหรับคำนวณราคาของพวก RWA (Risk Weighted Asset)
4. Mulex โดยส่วนตัวแล้วผู้เขียนไม่เคยมีประสพการณ์เกี่ยวกับ Mulex มาก่อน เคยได้ยินแต่เพื่อนๆพูดถึงบ้างเท่านั้น แต่เท่าที่พอสรุปได้จากเจ้าตัวนี้ก็คือ มันคือ IT Application ที่ใช้สำหรับการ Trading ทั้งแบบ Exchange และ OTC โดยที่บรรดาบริษัท Consultant ที่เป็น Specialist Tech มักจะมองหาผู้ร่วมงานที่มีความรู้เกี่ยวกับการใช้งานของ Software ตัวนี้ นอกเหนือไปจากทักษะที่จำเป็นในด้านอื่นๆ
5. Python นึกว่าเจ้างูเหลือมแสนเชื่องของเราจะไม่ติดอันดับซะแล้ว โดยในบทความฉบับนี้ ได้ยกย่องให้เจ้า Python เป็นถึงขั้น "Red Hot" Skill สำหรับ Developer ในวงการการเงินกันเลยทีเดียว ซึ่ง Trend ในการนำ Python ไปใช้งานในขณะนี้คือ การสร้าง Platform สำหรับ Interest Rate Derivatives
Credit: Paul Clarke จาก efinancialcareers.com, "The top five most desirable skills in FinTech now"
งั้นเราลองมาดูกันว่า ทักษะในด้านใดกันบ้างที่บรรดาเหล่า FinTech ต้องการจากผู้ร่วมงาน
1. Java ถ้าหากว่าคุณอยากทำงานในสายงาน Banking Technology แล้วล่ะก็ จงฝึกฝน Java ซะ เพราะต้องยอมรับกันเลยว่า Java Developer ที่มีฝีมือเก่งจริงๆนั้น ไม่ได้หาตัวกันได้ง่ายๆเลย
2. Business Analyst หรือที่เรามักคุ้นกันในคำสั้นๆว่า BA ซึ่งคนกลุ่มนี้ถือได้ว่ามีส่วนเป็นอย่างมากต่อการกำหนดกลยุทธในโปรเจ็คต่างๆของบริษัทเป็นอย่างมาก โดยเฉพาะถ้าคุณเป็นคนที่มีความรู้ความเข้าใจในเรื่อง Future และ Option ของพวกสินทรัพย์ประเภทต่างๆเป็นอย่างดีแล้วล่ะก็ คุณก็มีโอกาสที่จะได้รับค่าตัวอย่างงามในบริษัทที่ทำโครงการเกี่ยวกับพวก Derivative Tech อย่างแน่นอน
3. C# สำหรับเจ้า C# นั้น ตลาดทางการเงินในขณะนี้ กำลังมีความต้องการ Developer ทางด้าน C# เพื่อนำเอาทักษะของพวกเค้าไปใช้ในการพัฒนา Tool สำหรับคำนวณราคาของพวก RWA (Risk Weighted Asset)
4. Mulex โดยส่วนตัวแล้วผู้เขียนไม่เคยมีประสพการณ์เกี่ยวกับ Mulex มาก่อน เคยได้ยินแต่เพื่อนๆพูดถึงบ้างเท่านั้น แต่เท่าที่พอสรุปได้จากเจ้าตัวนี้ก็คือ มันคือ IT Application ที่ใช้สำหรับการ Trading ทั้งแบบ Exchange และ OTC โดยที่บรรดาบริษัท Consultant ที่เป็น Specialist Tech มักจะมองหาผู้ร่วมงานที่มีความรู้เกี่ยวกับการใช้งานของ Software ตัวนี้ นอกเหนือไปจากทักษะที่จำเป็นในด้านอื่นๆ
5. Python นึกว่าเจ้างูเหลือมแสนเชื่องของเราจะไม่ติดอันดับซะแล้ว โดยในบทความฉบับนี้ ได้ยกย่องให้เจ้า Python เป็นถึงขั้น "Red Hot" Skill สำหรับ Developer ในวงการการเงินกันเลยทีเดียว ซึ่ง Trend ในการนำ Python ไปใช้งานในขณะนี้คือ การสร้าง Platform สำหรับ Interest Rate Derivatives
Credit: Paul Clarke จาก efinancialcareers.com, "The top five most desirable skills in FinTech now"
Thursday, February 18, 2016
Trader จำเป็นต้องรู้วิธีเขียนโค้ดหรือไม่
แน่นอนว่าคุณกำลังอาศัยเจ้าคอมพิวเตอร์ทั้งหลายให้มันช่วยตัดสินใจแทนคุณ เจ้า Python ที่ผมเคยพูดถึงไปใน Blog ก่อนหน้านี้ จะเป็นอะไรที่คุณหลีกเลี่ยงไม่ได้อย่างแน่นอน ดังนั้นนอกจาก Degree ที่จะมีติดตัวคุณไปตอนที่คุณเรียนจบแล้ว อาวุธที่คุณควรมีติดตัวคุณไปเป็นอย่างที่สองก็คือเจ้า Coding Skill นี่แหละ ซึ่งโลกแห่งการแข่งขันในสายงานนี้ ทำให้ตอนนี้การศึกษาเกี่ยวกับ Coding เป็นอะไรที่ทุกคนกำลังให้ความสำคัญเป็นอย่างมาก
สำหรับในโลกของ HFT (High Frequency Trading) HFT Trader จำเป็นที่จะต้องเข้าใจ Coding ที่พวกเค้ากำลังสั่งให้มันทำงานบน Trading Idea ของพวกเค้า ซึ่งพวกเค้าอาจไม่จำเป็นต้องเป็นถึงขั้น Expert Coder แต่การเข้าใจในสิ่งที่ Code เหล่านั้นกำลังทำงาน จะทำให้พวกเค้าสามารถนำ Code เหล่านั้นกลับมาปรับปรุงเพื่อให้การเทรดของพวกเค้าดียิ่งขึ้นได้ ส่วนผู้ที่อาจอยู่เบื้องหลังอย่าง Quant Developer นั้น จะเป็นผู้ที่สร้าง Analytic Tools และ Library ต่างๆ สำหรับให้ Trader นำไปใช้ ซึ่งมีการรายงานว่าพวก Senior Trader ต่างๆ หันหลังให้กับงานของตน แล้วกลับไปศึกษาทางด้าน Computer Science เพิ่มขึ้น ซึ่งหากว่าคุณต้องการทำงานเป็นพวก HFT Trader ด้วยแล้ว คุณจำเป็นที่จะต้องเรียนรู้ภาษาต่างๆอย่างเช่น C++ และ Python
อย่างไรก็ตามโปรดเข้าใจว่า Coding เป็นเรื่องของ Problem Solving ที่อาศัย Coding Language และ Tools ในการทำงาน ดังนั้นถ้าหากว่าคุณสามารถเรียนรู้การเขียนและการใช้งานภาษาคอมพิวเตอร์ได้เป็นอย่างดีภาษาใดภาษาหนึ่ง คุณก็ย่อมที่จะสามารถเรียนรู้ภาษาอื่นๆได้
ดังนั้นการทำให้ตัวเอง "up to date" กับขบวนการหรือวิธีการแบบใหม่ๆ ถือเป็นเรื่องที่สำคัญเป็นอย่างยิ่งหากคุณต้องการเติบโตในอุตสาหกรรมที่คุณกำลังทำงาน
Credit: Sarah Butch จาก news.efinancialcareers.com, "Do traders need to know how to code?"
Saturday, February 13, 2016
Python Tutorials for Beginners
ขอแนะนำ website ที่มีประโยชน์ สำหรับผู้ที่ต้องการศึกษาภาษา Pyhton แบบเบื้องต้นนะครับ
Website ที่ว่ามีชื่อว่า The Python Guru (http://thepythonguru.com/) ผู้อ่านสามารถลองเข้าไปดูหลักการพื้นฐานของการเขียนโปรแกรมภาษานี้กันได้
สำหรับท่านที่ต้องการติดตั้งโปรแกรม Python นั้น สามารถไป Download โปรแกรมมาติดตั้งกันได้ที่ https://www.python.org/downloads/ โดยจะมี 2 version ให้เลือก ขอแนะนำให้ทำการติดตั้ง version 3.4 เป็นอย่างน้อย
ขออนุญาติแนะนำผู้ร่วมก่อตั้ง Blog นี้อีกท่านครับ ......... คุณแซม
คุณ แซม จบการศึกษามาทางด้านฟิสิกส์ แต่ปัจจุบันได้หันมาศึกษาทางด้านวิศวกรรมการเงิน และกำลังจะสำเร็จการศึกษาในเร็วๆนี้ครับ
สำหรับความรู้ความสามารถนั้น คุณแซมเป็นผู้ที่มีความเชี่ยวชาญในการสร้างโปรแกรมการทำงานทางด้านการเงินสำหรับแบบจำลองทางการเงินต่างๆ โดยเฉพาะโปรแกรมจำพวก Python และ VBA
ภาษาคอมพิวเตอร์ที่กำลังร้อนแรงที่สุดในกลุ่มธุรกิจการเงินขณะนี้
ถ้าหากคุณเป็นคนหนึ่งที่มีความต้องการที่จะทำงานในบริษัทชั้นนำของกลุ่มธุรกิจการเงิน ลองมาเช็คดูว่าบริษัทเหล่านั้น กำลังมองหาบุคลากรที่มีความสามารถทางด้านการเขียนโปรแกรมคอมพิวเตอร์ในภาษาอะไรบ้าง และคุณมีทักษะในการเขียนภาษาคอมพิวเตอร์ต่างๆเหล่านี้หรือยัง
1. Python ภาษา Python เป็นภาษาที่ได้รับความนิยมอย่างรวดเร็วและแพร่หลายในวงการด้านการเงิน ไม่ว่าจะเป็นการนำไปใช้ในการหาราคา บริหารความเสี่ยง และระบบสำหรับบริหารการซื้อขาย โดยธนาคารส่วนใหญ่มักจะใช้ Python คู่กับ JAVA โดยตัวเลขที่เคยมีการรวบรวมกันในต่างประเทศระบุว่า อัตราการแข่งขันในตำแหน่งงานที่ต้องการทักษะการเขียนโปรแกรม Python จะอยู่ที่เพียงประมาณ 6.7:1
2. C++ ภาษา C++ ยังคงเป็นภาษาที่ได้รับความนิยมอย่างต่อเนื่อง อันเนื่องมาจากความต้องการที่มีอยู่มากสำหรับทักษะการเขียนโปรแกรมทางด้านนี้จากหน่วยงานที่รู้จักกันดีเพียงไม่กี่แห่ง โดย C++ มักจะถูกนำไปใช้ในหน่วยงานที่ต้องการความเร็วในการทำงานเป็นหัวใจหลัก เช่นธนาคารใหญ่ๆ หรือ Trading House ต่างๆ ที่ใช้ระบบ HFT (High Frequency Trading) ในการทำงาน สำหรับอัตราการแข่งขันในตำแหน่งงานที่ต้องการทักษะการเขียนโปรแกรม C++ อาจจะอยู่ที่ประมาณ 8.5:1
3. C#/JAVA พวกสถาบันการเงินต่างๆ โดยเฉพาะกลุ่ม Investment Banking จะใช้ภาษาเหล่านี้ค่อนข้างมากสำหรับการสร้าง Trading Infrastructure ซึ่งรวมถึงพวก Front-End Trading Interface และ Data Feed สำหรับอัตราการแข่งขันในตำแหน่งงานที่ต้องการทักษะการเขียนโปรแกรมคู่นี้ น่าจะอยู่ที่ประมาณ 10.7-15.3:1 โดยอัตราการแข่งขันในด้านภาษา JAVA จะสูงกว่า ภาษา C# อยู่ประมาณ 50%
อย่างไรก็ตาม หากคุณมีความคุ้นเคยกับการทำงานด้วย Data Mining และ Spreadsheet อย่างเช่น VBA นั่นจะยิ่งเป็นการเพิ่มมูลค่าให้กับตัวคุณอีกมากขึ้นอย่างแน่นอน
Credit: Paul Clarke จาก news.efinancialcareers.com, "The 6 hottest programming language to know in banking technology" และ Shobhit Seth จาก investopedia.com, "Skills to become an elite quant trader"
Subscribe to:
Comments (Atom)





