portaldacalheta.pt
  • หลัก
  • การจัดการวิศวกรรม
  • วิทยาศาสตร์ข้อมูลและฐานข้อมูล
  • เครื่องมือและบทช่วยสอน
  • นักลงทุนและเงินทุน
เทคโนโลยี

Forex Algorithmic Trading: เรื่องจริงสำหรับวิศวกร



ดังที่คุณทราบแล้วตลาดแลกเปลี่ยนเงินตราต่างประเทศ (Forex หรือ FX) ใช้สำหรับการซื้อขายระหว่างคู่สกุลเงิน แต่คุณอาจไม่ทราบว่าตลาดนี้เป็นตลาดที่มีสภาพคล่องมากที่สุดในโลก

รอบลงคืออะไร

ไม่กี่ปีที่ผ่านมาด้วยความอยากรู้อยากเห็นของฉันฉันได้ก้าวแรกเข้าสู่โลกของการซื้อขายอัลกอริทึม Forex ด้วยการสร้างบัญชีทดลองและเล่นแบบจำลอง (ด้วยเงินปลอม) บน Meta Trader 4 แพลตฟอร์มการซื้อขาย



ภาพประกอบปก Forex



หลังจากหนึ่งสัปดาห์ของการ 'ซื้อขาย' ฉันได้เงินเพิ่มขึ้นเกือบสองเท่า ด้วยการซื้อขายอัลกอริธึมที่ประสบความสำเร็จของฉันเองฉันจึงขุดลึกลงไปและในที่สุดก็ลงทะเบียนฟอรัม FX จำนวนมาก ในไม่ช้าฉันใช้เวลาหลายชั่วโมงในการอ่านเกี่ยวกับระบบการซื้อขายแบบอัลกอริทึม (ชุดกฎที่กำหนดว่าคุณควรซื้อหรือขาย) ตัวบ่งชี้ที่กำหนดเอง อารมณ์ของตลาดและอื่น ๆ



ลูกค้ารายแรกของฉัน

รอบนี้บังเอิญฉันได้ยินมาว่ามีคนพยายามหานักพัฒนาซอฟต์แวร์เพื่อสร้างระบบการซื้อขายที่เรียบง่ายโดยอัตโนมัติ สิ่งนี้ย้อนกลับไปในสมัยเรียนมหาวิทยาลัยของฉันเมื่อฉันเรียนรู้เกี่ยวกับ การเขียนโปรแกรมพร้อมกัน ใน Java (เธรดเซมาโฟเรสและขยะทั้งหมดนั้น) ฉันคิดว่าระบบอัตโนมัตินี้ไม่ได้ซับซ้อนไปกว่าฉัน วิทยาศาสตร์ข้อมูลขั้นสูง งานหลักสูตรดังนั้นฉันจึงสอบถามเกี่ยวกับงานและมาขึ้นเรือ

ลูกค้าต้องการซอฟต์แวร์การซื้อขายอัลกอริทึมที่สร้างขึ้นด้วย MQL4 ซึ่งเป็นภาษาการเขียนโปรแกรมเชิงฟังก์ชันที่ใช้โดยแพลตฟอร์ม Meta Trader 4 สำหรับการดำเนินการเกี่ยวกับหุ้น



MQL5 ได้รับการปล่อยตัว อย่างที่คุณคาดหวังมันจะช่วยแก้ปัญหาบางอย่างของ MQL4 และมาพร้อมกับฟังก์ชั่นในตัวเพิ่มเติมซึ่งทำให้ชีวิตง่ายขึ้น

บทบาทของแพลตฟอร์มการซื้อขาย (Meta Trader 4 ในกรณีนี้) คือการเชื่อมต่อกับโบรกเกอร์ Forex จากนั้นนายหน้าจะจัดหาแพลตฟอร์มที่มีข้อมูลแบบเรียลไทม์เกี่ยวกับตลาดและดำเนินการตามคำสั่งซื้อ / ขายของคุณ สำหรับผู้อ่านที่ไม่คุ้นเคยกับการซื้อขาย Forex นี่คือข้อมูลที่จัดเตรียมโดยฟีดข้อมูล:

แผนภาพนี้แสดงข้อมูลที่เกี่ยวข้องกับการซื้อขายอัลกอริทึม Forex



ผ่าน Meta Trader 4 คุณสามารถเข้าถึงข้อมูลทั้งหมดนี้ด้วยฟังก์ชันภายในซึ่งสามารถเข้าถึงได้ในกรอบเวลาต่างๆ: ทุกนาที (M1) ทุกๆห้านาที (M5), M15, M30, ทุกชั่วโมง (H1), H4, D1, W1, MN .

การเคลื่อนไหวของราคาปัจจุบันเรียกว่า a ติ๊ก . กล่าวอีกนัยหนึ่งติ๊กคือการเปลี่ยนแปลงราคา Bid หรือ Ask สำหรับคู่สกุลเงิน ในช่วงตลาดที่มีการซื้อขายอาจมีเห็บจำนวนมากต่อวินาที ในช่วงตลาดชะลอตัวอาจมีนาทีโดยไม่ต้องติ๊ก เห็บคือการเต้นของหัวใจของหุ่นยนต์ตลาดเงินตรา



เมื่อคุณสั่งซื้อผ่านแพลตฟอร์มดังกล่าวคุณ ซื้อ หรือ ขาย ปริมาณหนึ่งของสกุลเงินหนึ่ง ๆ นอกจากนี้คุณยังตั้งค่าขีด จำกัด การหยุดขาดทุนและการทำกำไร ขีด จำกัด หยุดการสูญเสีย คือจำนวนเงินสูงสุด pips (รูปแบบราคา) ที่คุณสามารถเสียได้ก่อนที่จะยอมแพ้ในการซื้อขาย ขีด จำกัด การทำกำไร คือจำนวน pip ที่คุณจะสะสมไว้ในความโปรดปรานของคุณก่อนที่จะถอนออก

หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับพื้นฐานของการซื้อขาย (เช่น pip ประเภทคำสั่งสเปรด Slippage คำสั่งซื้อในตลาดและอื่น ๆ ) โปรดดูที่ ที่นี่ .

ข้อกำหนดการซื้อขายอัลกอริทึมของลูกค้านั้นเรียบง่าย: พวกเขาต้องการหุ่นยนต์ Forex โดยใช้ตัวบ่งชี้สองตัว สำหรับพื้นหลังตัวบ่งชี้คือ มาก มีประโยชน์เมื่อพยายามกำหนดสถานะของตลาดและทำการตัดสินใจในการซื้อขายเนื่องจากอิงจากข้อมูลในอดีต (เช่นมูลค่าราคาสูงสุดในช่วงสุดท้าย n วัน) หลายตัวมาใน Meta Trader 4 อย่างไรก็ตามตัวบ่งชี้ที่ลูกค้าของฉันสนใจมาจากระบบการซื้อขายที่กำหนดเอง



พวกเขาต้องการซื้อขายทุกครั้งที่สองตัวบ่งชี้ที่กำหนดเองเหล่านี้ตัดกันและในมุมหนึ่งเท่านั้น

ตัวอย่างอัลกอริทึมการซื้อขายนี้แสดงให้เห็นถึงความต้องการของลูกค้าของฉัน



Hands On

เมื่อมือของฉันสกปรกฉันได้เรียนรู้ว่าโปรแกรม MQL4 มีโครงสร้างดังต่อไปนี้:

  • [คำสั่งตัวประมวลผลล่วงหน้า]
  • [พารามิเตอร์ภายนอก]
  • [ตัวแปรร่วม]
  • [ฟังก์ชันเริ่มต้น]
  • [ฟังก์ชัน Deinit]
  • [ฟังก์ชันเริ่มต้น]
  • [ฟังก์ชั่นที่กำหนดเอง]

ฟังก์ชันเริ่มต้นเป็นหัวใจสำคัญของทุกโปรแกรม MQL4 เนื่องจากมีการดำเนินการทุกครั้งที่มีการเคลื่อนไหวของตลาด (ergo ฟังก์ชันนี้จะทำงานหนึ่งครั้งต่อหนึ่งขีด) เป็นกรณีนี้ไม่ว่าคุณจะใช้กรอบเวลาใดก็ตาม ตัวอย่างเช่นคุณอาจใช้งานในกรอบเวลา H1 (หนึ่งชั่วโมง) แต่ฟังก์ชันเริ่มต้นจะทำงานหลายพันครั้งต่อกรอบเวลา

ในการแก้ไขปัญหานี้ฉันบังคับให้ฟังก์ชันดำเนินการหนึ่งครั้งต่อหน่วยช่วงเวลา:

int start() { if(currentTimeStamp == Time[0]) return (0); currentTimeStamp = Time[0]; ...

การรับค่าของตัวบ่งชี้:

// Loading the custom indicator extern string indName = 'SonicR Solid Dragon-Trend (White)'; double dragon_min; double dragon_max; double dragon; double trend; int start() { … // Updating the variables that hold indicator values actInfoIndicadores(); …. string actInfoIndicadores() { dragon_max=iCustom(NULL, 0, indName, 0, 1); dragon_min=iCustom(NULL, 0, indName, 1, 1); dragon=iCustom(NULL, 0, indName, 4, 1); trend=iCustom(NULL, 0, indName, 5, 1); }

ตรรกะการตัดสินใจรวมถึงจุดตัดของตัวบ่งชี้และมุมของพวกเขา:

int start() { … if(ticket==0) { if (dragon_min > trend && (ordAbierta== 'OP_SELL' || primeraOP == true) && anguloCorrecto('BUY') == true && DiffPrecioActual('BUY')== true ) { primeraOP = false; abrirOrden('OP_BUY', false); } if (dragon_max 0) { ticket=0; return(0); } } else Print('OrderSelect failed error code is',GetLastError()); if (ordAbierta == 'OP_BUY' && dragon_min = trend ) cerrarOrden(false); } }

การส่งคำสั่งซื้อ:

void abrirOrden(string tipoOrden, bool log) { RefreshRates(); double volumen = AccountBalance() * point; double pip = point * pipAPer; double ticket = 0; while( ticket <= 0) { if (tipoOrden == 'OP_BUY') ticket=OrderSend(simbolo, OP_BUY, volumen, Ask, 3, 0/*Bid - (point * 100)*/, Ask + (point * 50), 'Orden Buy' , 16384, 0, Green); if (tipoOrden == 'OP_SELL') ticket=OrderSend(simbolo, OP_SELL, volumen, Bid, 3, 0/*Ask + (point * 100)*/, Bid - (point * 50), 'Orden Sell', 16385, 0, Red); if (ticket<=0) Print('Error abriendo orden de ', tipoOrden , ' : ', ErrorDescription( GetLastError() ) ); } ordAbierta = tipoOrden; if (log==true) mostrarOrden(); }

หากคุณสนใจคุณสามารถค้นหาโค้ดที่สมบูรณ์และรันได้บน GitHub .

การทดสอบย้อนหลัง

เมื่อฉันสร้างระบบการซื้อขายแบบอัลกอริธึมของฉันฉันต้องการทราบว่า: 1) ว่ามันทำงานอย่างเหมาะสมหรือไม่และ 2) ว่ากลยุทธ์การซื้อขาย Forex ที่ใช้นั้นดีหรือไม่

การทดสอบย้อนหลัง (บางครั้งเขียนว่า 'back-testing') เป็นกระบวนการทดสอบระบบเฉพาะ (อัตโนมัติหรือไม่) ภายใต้เหตุการณ์ในอดีต กล่าวอีกนัยหนึ่งคือคุณทดสอบระบบของคุณโดยใช้อดีตเป็นพร็อกซีสำหรับปัจจุบัน

MT4 มาพร้อมกับเครื่องมือที่ยอมรับได้สำหรับการทดสอบกลยุทธ์การซื้อขาย Forex ย้อนหลัง (ปัจจุบันมีเครื่องมือระดับมืออาชีพมากขึ้นที่ให้ฟังก์ชันการทำงานที่หลากหลายมากขึ้น) ในการเริ่มต้นคุณตั้งค่ากรอบเวลาและเรียกใช้โปรแกรมของคุณภายใต้การจำลอง เครื่องมือจะจำลองแต่ละเห็บโดยรู้ว่าสำหรับแต่ละหน่วยควรเปิดในราคาที่กำหนดปิดที่ราคาหนึ่งและถึงจุดสูงสุดและต่ำที่กำหนด

หลังจากเปรียบเทียบการดำเนินการของโปรแกรมกับราคาที่ผ่านมาคุณจะมีความรู้สึกที่ดีว่าดำเนินการอย่างถูกต้องหรือไม่

ตัวชี้วัดที่เขาเลือกพร้อมกับตรรกะในการตัดสินใจนั้นไม่ได้ผลกำไร

จากการทดสอบย้อนหลังฉันจะตรวจสอบอัตราส่วนผลตอบแทนของหุ่นยนต์ FX สำหรับช่วงเวลาแบบสุ่มบางช่วง ไม่จำเป็นต้องพูดฉันรู้ว่าลูกค้าของฉันจะไม่ร่ำรวยด้วย - ตัวชี้วัดที่เขาเลือกพร้อมกับตรรกะในการตัดสินใจนั้นไม่ได้ผลกำไร . ตัวอย่างนี่คือผลลัพธ์ของการรันโปรแกรมบนหน้าต่าง M15 สำหรับ 164 การดำเนินการ:

นี่คือผลลัพธ์ของการเรียกใช้โปรแกรมซอฟต์แวร์อัลกอริทึมการซื้อขายที่ฉันพัฒนาขึ้น

หลักการเกสตัลต์ของฟิกเกอร์กราวด์

โปรดทราบว่ายอดคงเหลือของเรา (เส้นสีน้ำเงิน) จะสิ้นสุดต่ำกว่าจุดเริ่มต้น

ข้อแม้ประการหนึ่ง: การบอกว่าระบบ 'ทำกำไร' หรือ 'ไม่ได้ประโยชน์' ไม่ใช่ของแท้เสมอไป บ่อยครั้งที่ระบบ (ยกเลิก) ทำกำไรได้ในช่วงเวลาหนึ่งตาม 'อารมณ์' ของตลาดซึ่งสามารถทำตามรูปแบบแผนภูมิได้หลายแบบ:

แนวโน้มบางประการในตัวอย่างการซื้อขายแบบอัลกอริทึมของเรา

การเพิ่มประสิทธิภาพพารามิเตอร์และคำโกหก

แม้ว่าการทดสอบย้อนหลังจะทำให้ฉันระมัดระวังถึงประโยชน์ของหุ่นยนต์ FX นี้ ฉันรู้สึกทึ่งเมื่อเริ่มเล่นกับพารามิเตอร์ภายนอกของมันและสังเกตเห็นความแตกต่างอย่างมากในอัตราส่วนผลตอบแทนโดยรวม วิทยาศาสตร์เฉพาะนี้เรียกว่า การเพิ่มประสิทธิภาพพารามิเตอร์ .

ฉันทำการทดสอบคร่าวๆเพื่อทดลองและสรุปความสำคัญของพารามิเตอร์ภายนอกใน Return Ratio และได้ผลลัพธ์ดังนี้:

ลักษณะหนึ่งของอัลกอริทึม Forex คือ Return Ratio

หรือทำความสะอาด:

อัตราส่วนผลตอบแทนการซื้อขายอัลกอริทึมอาจมีลักษณะเช่นนี้เมื่อทำความสะอาด

คุณอาจคิด (เหมือนที่ฉันเคยทำ) ว่าคุณควรใช้พารามิเตอร์ A แต่การตัดสินใจนั้นไม่ตรงไปตรงมาอย่างที่คิด โดยเฉพาะให้สังเกตไฟล์ คาดเดาไม่ได้ ของพารามิเตอร์ A: สำหรับค่าความผิดพลาดเล็กน้อยผลตอบแทนจะเปลี่ยนแปลงไปอย่างมาก กล่าวอีกนัยหนึ่งพารามิเตอร์ A มีแนวโน้มที่จะทำนายผลลัพธ์ในอนาคตมากเกินไปเนื่องจากมีความไม่แน่นอนการเปลี่ยนแปลงใด ๆ เลยจะส่งผลให้ประสิทธิภาพแย่ลง

แต่อนาคตไม่แน่นอน! ดังนั้นการกลับมาของพารามิเตอร์ A ก็ไม่แน่นอนเช่นกัน ทางเลือกที่ดีที่สุดในความเป็นจริงคือการพึ่งพาการคาดเดาไม่ได้ บ่อยครั้งพารามิเตอร์ที่มีผลตอบแทนสูงสุดต่ำกว่า แต่ความสามารถในการคาดการณ์ที่เหนือกว่า (ความผันผวนน้อยกว่า) จะดีกว่ากับพารามิเตอร์ที่มีผลตอบแทนสูง แต่คาดการณ์ได้ไม่ดี

สิ่งเดียวที่คุณมั่นใจได้คือคุณไม่รู้อนาคตของตลาดและ การคิดว่าคุณรู้ว่าตลาดจะดำเนินการอย่างไรจากข้อมูลในอดีตเป็นความผิดพลาด ในทางกลับกันคุณต้องยอมรับความไม่แน่นอนนี้ในการคาดการณ์ Forex ของคุณ

การคิดว่าคุณรู้ว่าตลาดจะดำเนินการอย่างไรจากข้อมูลในอดีตเป็นความผิดพลาด

นี่ไม่ได้หมายความว่าเราควรใช้พารามิเตอร์ B เพราะแม้ผลตอบแทนที่ต่ำกว่าของพารามิเตอร์ A จะทำงานได้ดีกว่าพารามิเตอร์ B นี่เป็นเพียงการแสดงให้คุณเห็นว่าการเพิ่มประสิทธิภาพพารามิเตอร์สามารถส่งผลให้เกิดการทดสอบที่เกินจริงถึงผลลัพธ์ในอนาคตและความคิดดังกล่าวไม่ชัดเจน

การพิจารณาการซื้อขาย Forex อัลกอริทึมโดยรวม

นับตั้งแต่ประสบการณ์การซื้อขาย Forex แบบอัลกอริทึมครั้งแรกฉันได้สร้างระบบการซื้อขายอัตโนมัติหลายระบบสำหรับลูกค้าและฉันสามารถบอกคุณได้ว่ามีพื้นที่ให้สำรวจและวิเคราะห์ Forex เพิ่มเติมได้เสมอ ตัวอย่างเช่นฉันเพิ่งสร้างระบบจากการค้นหาการเคลื่อนไหวที่เรียกว่า 'Big Fish'; นั่นคือรูปแบบของ pip ขนาดใหญ่ในหน่วยเวลาเล็ก ๆ น้อย ๆ นี่เป็นเรื่องที่ทำให้ฉันทึ่ง

การสร้างระบบจำลอง FX ของคุณเองเป็นตัวเลือกที่ยอดเยี่ยมในการเรียนรู้เพิ่มเติมเกี่ยวกับการซื้อขายในตลาด Forex และความเป็นไปได้นั้นไม่มีที่สิ้นสุด ตัวอย่างเช่นคุณสามารถลองถอดรหัสการกระจายความน่าจะเป็นของรูปแบบราคาที่เป็นฟังก์ชันของความผันผวนในตลาดหนึ่ง (เช่น EUR / USD) และอาจสร้างแบบจำลองมอนติคาร์โลโดยใช้การกระจายต่อสถานะความผันผวนโดยใช้ระดับใดก็ได้ ความแม่นยำที่คุณต้องการ ฉันจะปล่อยให้เป็นแบบฝึกหัดสำหรับ กระตือรือร้น ผู้อ่าน

ในบางครั้งโลกของ Forex อาจท่วมท้น แต่ฉันหวังว่าบทความนี้จะช่วยให้คุณทราบถึงวิธีการเริ่มต้นกลยุทธ์การซื้อขาย Forex ของคุณเอง

อ่านเพิ่มเติม

ปัจจุบันมีเครื่องมือมากมายในการสร้างทดสอบและปรับปรุงระบบการซื้อขายอัตโนมัติ: ซื้อขาย Blox สำหรับการทดสอบ NinjaTrader สำหรับการซื้อขาย OCaml สำหรับการเขียนโปรแกรมเพื่อชื่อไม่กี่

ฉันได้อ่านมามากมายเกี่ยวกับโลกลึกลับที่เป็นตลาดสกุลเงิน นี่คือบทความบางส่วนที่ฉันแนะนำสำหรับโปรแกรมเมอร์และผู้อ่านที่กระตือรือร้น:

  • BabyPips : นี่เป็นจุดเริ่มต้นหากคุณไม่รู้จัก squat เกี่ยวกับการซื้อขาย Forex
  • วิถีแห่งเต่า โดย Curtis Faith: อันนี้ในความคิดของฉันคือไฟล์ Forex พระคัมภีร์ . อ่านเมื่อคุณมีประสบการณ์ในการซื้อขายและรู้จักกลยุทธ์ Forex มาบ้างแล้ว
  • การวิเคราะห์ทางเทคนิคสำหรับผู้เชี่ยวชาญด้านการซื้อขาย - กลยุทธ์และเทคนิคสำหรับตลาดการเงินโลกที่ปั่นป่วนในปัจจุบัน โดยคอนสแตนซ์เอ็มบราวน์
  • การเขียนโปรแกรมที่ปรึกษาผู้เชี่ยวชาญ - การสร้างระบบการซื้อขายอัตโนมัติใน MQL สำหรับ Meta Trader 4 โดย Andrew R Young
  • ระบบการซื้อขาย - แนวทางใหม่ในการพัฒนาระบบและการเพิ่มประสิทธิภาพพอร์ตการลงทุน โดย Urban Jeckle และ Emilio Tomasini: มีเทคนิคมากเน้นการทดสอบ FX
  • การติดตั้งระบบการซื้อขายสกุลเงินหลายตัวแทนแบบทีละขั้นตอน โดย Rui Pedro Barbosa และ Orlando Belo: อันนี้เป็นมืออาชีพมากโดยอธิบายว่าคุณจะสร้างระบบการซื้อขายและแพลตฟอร์มทดสอบได้อย่างไร

ทำความเข้าใจพื้นฐาน

การซื้อขาย Forex คืออะไร?

การซื้อขาย Forex (หรือ FX) คือการซื้อและขายผ่านคู่สกุลเงิน (เช่น USD เทียบกับ EUR) ในตลาดแลกเปลี่ยนเงินตราต่างประเทศ

Forex ทำเงินได้อย่างไร?

โบรกเกอร์ Forex สร้างรายได้ผ่านค่าคอมมิชชั่นและค่าธรรมเนียม ผู้ค้า Forex ทำเงินได้ (หรือเสีย) ตามเวลา: หากพวกเขาสามารถขายได้สูงพอเมื่อเทียบกับตอนที่ซื้อพวกเขาสามารถทำกำไรได้

Backtesting กลยุทธ์การซื้อขายคืออะไร?

Backtesting คือกระบวนการทดสอบกลยุทธ์หรือระบบโดยใช้เหตุการณ์ในอดีต

การซื้อขายอัลกอริทึมคืออะไร?

การซื้อขายแบบอัลกอริทึมคือการที่หุ่นยนต์ / โปรแกรมใช้ชุดของกฎที่บอกว่าเมื่อใดควรซื้อหรือขาย

Senior Ruby on Rails Engineer

อื่น ๆ

Senior Ruby on Rails Engineer
JavaScript Promises: บทช่วยสอนพร้อมตัวอย่าง

JavaScript Promises: บทช่วยสอนพร้อมตัวอย่าง

ส่วนหน้าของเว็บ

โพสต์ยอดนิยม
วิธีการรับสมัครผู้เข้าร่วมวิจัย UX
วิธีการรับสมัครผู้เข้าร่วมวิจัย UX
การลงทุนใน Cryptocurrencies: The Ultimate Guide
การลงทุนใน Cryptocurrencies: The Ultimate Guide
การออกแบบเว็บไซต์ CMS: คู่มือการใช้งานเนื้อหาแบบไดนามิก
การออกแบบเว็บไซต์ CMS: คู่มือการใช้งานเนื้อหาแบบไดนามิก
บทช่วยสอนเกี่ยวกับส่วนขยายแอป iOS 8
บทช่วยสอนเกี่ยวกับส่วนขยายแอป iOS 8
การดำดิ่งสู่ React Native (บทช่วยสอนสำหรับผู้เริ่มต้น)
การดำดิ่งสู่ React Native (บทช่วยสอนสำหรับผู้เริ่มต้น)
 
Init.js: คำแนะนำเกี่ยวกับเหตุผลและวิธีการของชุดเทคโนโลยี JavaScript
Init.js: คำแนะนำเกี่ยวกับเหตุผลและวิธีการของชุดเทคโนโลยี JavaScript
สาเหตุและผลกระทบ - การสำรวจจิตวิทยาสี
สาเหตุและผลกระทบ - การสำรวจจิตวิทยาสี
คุณต้องการฮีโร่: ผู้จัดการโครงการ
คุณต้องการฮีโร่: ผู้จัดการโครงการ
แนวทางปฏิบัติที่ดีที่สุดในการออกแบบ UI เพื่อการสแกนที่ดีขึ้น
แนวทางปฏิบัติที่ดีที่สุดในการออกแบบ UI เพื่อการสแกนที่ดีขึ้น
13 Podcasts นักออกแบบทุกคนควรฟัง
13 Podcasts นักออกแบบทุกคนควรฟัง
โพสต์ยอดนิยม
  • ใช้เซิร์ฟเวอร์การผลิต wsgi แทน
  • ความแตกต่างระหว่าง ac คอร์ปอเรชั่น และ s คอร์ปอเรชั่น
  • ข้อใดต่อไปนี้เป็นความรับผิดชอบของ cfo
  • หลักการเกสตัลต์ของความใกล้ชิดคือแนวโน้ม
  • กฎแห่งการปิดตัวอย่างชีวิตจริง
หมวดหมู่
  • การจัดการวิศวกรรม
  • วิทยาศาสตร์ข้อมูลและฐานข้อมูล
  • เครื่องมือและบทช่วยสอน
  • นักลงทุนและเงินทุน
  • © 2022 | สงวนลิขสิทธิ์

    portaldacalheta.pt