ååŒæååŒã¯ãã€ãã¯ç£æ¥ã§ãã Habréã®ããã°ã§ã¯ãéèæ å ±ã®è»¢éã«äœ¿çšããããããã³ã«ïŒ1ã2ã3ã4ïŒã«ã€ããŠèª¬æããéèååŒããã®ã€ã³ãã©ã¹ãã©ã¯ãã£ãå®èšŒã ãååŒç«¯æ«ã®ããã©ãŒãã³ã¹ãæé©åããããã»ã¹ã«ã€ããŠèª¬æããŸããã
ä»æ¥ã¯ãéèã®åéã§ã©ã®ããã°ã©ãã³ã°èšèªã䜿çšãããŠããããã©ã®ããã°ã©ãã³ã°èšèªã䜿çšãããŠããããããããã®ç¹å®ã®ã±ãŒã¹ã§ã©ã®ã¿ã¹ã¯ãéžæãããã«ã€ããŠã話ããŸãã
ãã¡ã€ãã³ã¹ãšããã°ã©ãã³ã°ïŒæŠèŠ
åŸæ¥ãéèæ¥çã§ã¯éèèšèªãéèŠããããããããŸããŸãªããŒããŠã§ã¢ãšçžäºäœçšããé«è² è·ã®ããŒã¿åŠçããã³äŒéã·ã¹ãã ãäœæã§ããŸãã
蚌åžäŒç€ŸãšååŒæã®ã€ã³ãã©ã¹ãã©ã¯ãã£ã®å€§éšåã¯ã C ++èšèªã䜿çšããŠäœæãããŸããããã®å©ãã«ãããããªããã£ãã®äŸ¡æ Œã¢ãã«ãèšç®ããã©ã€ãã©ãªããããŒã¿ã¹ããªãŒã ãåŠçããã¢ãžã¥ãŒã«ãŸã§ãããŸããŸãªè£œåãäœæãããŸãã ãã®èšèªãç¥ã£ãŠããå°é家ãéèã®åéã§éåžžã«éèŠãããããšã¯é©ãããšã§ã¯ãããŸããã
ããã«ã CïŒãšJavaã¯éåžžã«äººæ°ã®ããããã°ã©ãã³ã°èšèªã§ãã ãããã®èšèªã¯ãã€ã³ãã©ã¹ãã©ã¯ãã£ã®åé¡ãçŽæ¥è§£æ±ºããããã«ããŸã䜿çšãããŸããããåžå Žã§ã¯ããããã®èšèªã§ã¢ãžã¥ãŒã«ãå®è£ ãããååŒãããããèŠã€ããããšãã§ããŸãã ããã«ãéèäŒç€Ÿã¯ãããã䜿çšããŠãããŸããŸãªæåç·ã®ãµãŒãã¹ãå®è£ ã§ããŸãã CïŒãšJavaã®ã¹ãã·ã£ãªã¹ãããã®ãããªäŒæ¥ã«éèŠããããŸãã
PythonãMATLABãRãªã©ã®ã¹ã¯ãªããèšèªã¯å¥ã®ã¬ã€ã€ãŒãè¡šããååŒæŠç¥ããããã¿ã€ãã®éåã¢ãã«ãèšè¿°ããããã«ãã䜿çšãããŸãã ãã¬ãŒããŒã¯å€ãã®å Žåããããã¿ã€ãçšã®ã³ãŒããã¹ã¯ãªããèšèªã§èšè¿°ããåŸã§C ++ãªã©ã®çç£æ§ã®é«ãèšèªã䜿çšããŠèšè¿°ããŸãã
ãã ããå Žåã«ãã£ãŠã¯ãæ©æ¢°ååŒã·ã¹ãã ãã¹ã¯ãªããèšèªã§å®å šã«å®è£ ã§ããŸãã TradeScriptèšèªãªã©ã®ãããã®ããŒã«ã®äžéšã¯ãã¬ãŒãã£ã³ã°ã¿ãŒããã«ã«ãçµã¿èŸŒãŸããŠããããããŠãŒã¶ãŒã¯çžå Žããã£ãŒãã®åæããæ°ãæ£ããããšãªãããã¬ãŒãã£ã³ã°æŠç¥ããã°ãããã¹ã±ãããã§ããŸãã
以äžã¯ãæŸç©ç·SARã€ã³ãžã±ãŒã¿ãŒãšææ°ç§»åå¹³åïŒEMAïŒã䜿çšããŠä¿¡å·ãçæããååŒæŠç¥ã説æããTradeScriptã³ãŒãã§ãã ãã®å Žåã20åšæãš60åšæã®EMAã䜿çšããŠããžã·ã§ã³ãå ¥åããæŸç©ç·ã·ã¹ãã ã䜿çšããŠããžã·ã§ã³ãçµäºããŸãã
TradeScriptã®ç°¡åãªååŒã·ã¹ãã ã³ãŒã
Buy Signals # 20- EMA - 60- EMA CROSSOVER(EMA(CLOSE, 20), EMA(CLOSE, 60)) Sell Signals # 20- EMA 60- EMA CROSSOVER(EMA(CLOSE, 60), EMA(CLOSE, 20)) Exit Long # - Parabolic SAR CROSSOVER(CLOSE, PSAR(CLOSE, 0.02, 0.2)) Exit Short # Parabolic SAR CROSSOVER(PSAR(CLOSE, 0.02, 0.2), CLOSE)
ãã¬ãŒãã£ã³ã°ããããã®äœæ
è¿å¹Žãéèæ¥çã§æããã€ãããã¯ã«çºå±ããŠããåéã®1ã€ã¯ãã¢ã«ãŽãªãºã ååŒãšååŒããããã®äœæã§ãã ãã®å Žåã«ã©ã®ããã°ã©ãã³ã°èšèªã䜿çšããããªã䜿çšãããã®ãã«ã€ããŠè©±ããŸãããã
ãŸãããœãããŠã§ã¢è£œåã®å Žåãšåæ§ã«ãååŒããããã®éçºè ã¯äœããã®åœ¢ã§ãåžå Žã®æåã«åœ±é¿ãäžããäž»ãªèŠå ãèæ ®ã«å ¥ããããšãã§ããããŸããŸãªåŠ¥åãããªããã°ãªããŸããã
- ååŒé床ãããªãã¡ ååŒæäœèªäœã®å®è¡-ã¢ããªã±ãŒã·ã§ã³ã®é床ãååŒæããã®å¿çã®åä¿¡é床ãããããèªäœã®åŠçé床
- æ°ããåžå Žãéèååãã¢ã«ãŽãªãºã ãªãã·ã§ã³ã«å¯Ÿå¿ããããããã®æ±çšæ§ãšã«ã¹ã¿ãã€ãºæ§
- éçºé床ãšå€§å¹ ãªå€æŽã
ãããã£ãŠãé床ãéèŠãªå ŽåïŒããšãã°ãHFTååŒã®å ŽåïŒãå¹æçãªäœã¬ãã«èšèªïŒC ++ããã³çŽç²ãªCïŒã䜿çšãããŸãã
å€æ°ã®ãã©ã³ã¶ã¯ã·ã§ã³ã䌎ããªãæŠç¥ã«åŸã£ãŠæ©èœãããã¬ãŒãã£ã³ã°ã·ã¹ãã ãããã°ã©ã ããå ŽåãäžèŠãããšäœæ¥é床ã§ã¯ãªããéçºèªäœã®å©äŸ¿æ§ãšé床ã§ãããã®å Žåãããšãã°ãã©ãããã©ãŒã ã§æéã®èšèªã¯äœ¿çšãããŸãã.NETïŒåãCïŒãŸãã¯Visal BasicïŒã
ãã1ã€ã®ãªãã·ã§ã³ã¯ãéèŠãªèšç®ãå¿ èŠãªç¶æ³ã§ãããå¿ ããããªã¢ã«ã¿ã€ã ã§ã¯ãããŸããã ãã®ãããªå Žåã解éãããPythonãRããŸãã¯TradeScriptèšèªã®äœ¿çšãä¿èšŒãããå ŽåããããŸãã
èšãæããã°ã察å¿ããããã°ã©ãã³ã°èšèªã¯ãååŒããããã®ããŸããŸãªã¢ãžã¥ãŒã«ã«äœ¿çšãããŸãã
- ååŒãšã³ãžã³ã¯ãCãC ++ãããã³ããŸããŸãªã¬ãã«ã®ã¢ã»ã³ãã©ãŒã§äœæãããã«ãŒã«ãšããŠãåçŽãªäžé£ã®æäœãå®è¡ããã·ã³ãã«ã§æéã®ããããã§ãã
- ãã©ã¡ãŒã¿ãŒç®¡çã·ã¹ãã -ãã®ãããªã¢ãžã¥ãŒã«ã¯ãã¢ã«ãŽãªãºã ã®æäœãå¶åŸ¡ããæ©èœãšãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ãçµã¿åããããã®ã§ãååŒã®çµæã衚瀺ããããã®å¶åŸ¡ãã©ã¡ãŒã¿ãŒãšã¡ã«ããºã ãå«ãå ŽåããããŸãã C ++ãCïŒãJavaãªã©ãããã§äœ¿çšã§ããŸãã
- ããã¯ãã¹ããšååŒãã©ã¡ãŒã¿ã®éžæã®ã·ã¹ãã -ã¢ãžã¥ãŒã«ã¯å±¥æŽããŒã¿ã§æ°ããã¢ã«ãŽãªãºã ããã¹ãããçŸåšã®ã¢ã«ãŽãªãºã ã®æ°ãããã©ã¡ãŒã¿ãéžæããããã«äœ¿çšãããŸãã ãã®ã¢ãžã¥ãŒã«ãå®è£ ããã«ã¯ãPythonããã³ãã®ä»ã®ã¹ã¯ãªããèšèªã䜿çšã§ããŸãã ïŒç§ãã¡ã®ããã°ã§ã¯ãPythonã§ã€ãã³ãæåã®ããã¯ãã¹ãã·ã¹ãã ãäœæããã¹ããŒãªãŒãå ¬éããŸããïŒã
å°é家ã®ã¢ããã€ã¹
ç¹å®ã®ç¶æ³ã«é©ããããã°ã©ãã³ã°èšèªãéžæããã«ã¯ããããã®ããŒã«ã®é©çšç¯å²ãçè«çã«èª¬æããã ãã§ã¯äžååãªå ŽåããããŸãã ãããã£ãŠãååŒã·ã¹ãã ã®ä»ã®éçºè ã®çµéšãç 究ããå¿ èŠããããŸãã
以äžã«ãååŒãããããšéèãœãããŠã§ã¢ã®äœæã«æºãããã·ã¢ãšå€åœã®å°é家ããããã€ãã®ãã³ããéããŸããã
QuoraãµãŒãã¹ã§ãã¬ãŒãã£ã³ã°ãããããäœæããããã®ããã°ã©ãã³ã°èšèªã®éžæã«é¢ããè°è«ã®äžã§ãããªã³ã¹ãã³å€§åŠã®PhDææãšFlexportéçºéšéã®è²¬ä»»è ã§ããAndrew Ledwinãããã¬ãŒãã£ã³ã°æŠç¥èªäœã説æããããã«éžæãã¹ãããŒã«ã«ã€ããŠè©±ããŸããã
ããã§ã¯ãããŸããŸãªã·ã°ãã«ã«åºã¥ããŠåçæ§ã®é«ãéçšã«ãŒã«ãçæããå¿ èŠããããŸãã [...]ãã®ã¬ãã«ã§ã®éèŠãªãã€ã³ãã¯ãèšèªã®è¡šçŸåã§ãã å€ãã®å ŽåãPythonãJavaã®C ++ãªã©ã®èšèªã䜿çšããŸãããHaskellãŸãã¯Rubyã¯ããã®åŸã®äœã¬ãã«èšèªã§ã®äž»èŠã¢ãžã¥ãŒã«ã®éçºã«ããããã©ãããŒããšããŠçæ³çãªãªãã·ã§ã³ã§ãããšèããŠããŸãã
ãã1ã€ã®éèŠãªã¹ãããã¯ãä¿¡å·ã®æ€çŽ¢ã§ãã ã»ãšãã©ã®å Žåãããã¯ãªãã©ã€ã³ã¢ã¯ãã£ããã£ã§ããããã®éããªã¢ã«ã¿ã€ã ã·ã¹ãã ã®å¶éãèæ ®ããŠå€æ°ã®çµ±èšãåæãããŸãã 圌ãã¯RãMatlabïŒåããŽãŒã«ããã³ïŒã®ãããªããŒã«ã䜿çšããŸãã æå°éã®åŽåã§å€§éã®ããŒã¿ãæ©æ¢°åŠç¿ããã³æäœã§ããå¯èœæ§ãéèŠã§ãã ããããäžè¬çã«ãäž»ãªçµæã¯ããã«ãããŸã-Excelã䜿çšããŠãããéæããããšãã§ãããã誰ãæ°ã«ããŸããïŒ
åãã¹ã¬ããã§ãYChartsãµãŒãã¹ã®éçºè ã§ããJeffrey Shekã¯ãé«é »åºŠååŒã«é¢ããŠã¯ãCïŒãJavaããŸãã¯Pythonã«æ³šæãæããååŒã·ã¹ãã ã®ãäŒèšãéšåã®äœæ¥ãä¿èšŒããéçºããŒã«ãå¿ããªãããã«ã¢ããã€ã¹ããŸããã
åæã®ããã«ããŒã¿ãéçŽããå¿ èŠãããå Žåã¯ãå€ãã®ã©ã€ãã©ãªãåãããã®ãéåžžã«é«éã§äœ¿çšããããŸããŸãªåé¡ã解決ããããã«å€ãã®ã³ãŒããæ¢ã«äœæãããŠããããšããå§ãããŸãïŒæ¯åè»èŒªãåçºæããªãããã«ïŒã ã»ãšãã©ã®å ŽåãCïŒãJavaãPythonã®ãããªãã®ã«ãªããŸããã
ããŒã¿åŠççšã®èšèªãéèŠã§ãã 1æ¥ã«Microsoftã®ãã¹ãŠã®æ ªåŒå ¥æãç¯çŽãããã§ããïŒ SQLããŒã¿ããŒã¹ïŒMySQLãSQLiteãªã©ïŒã䜿çšããŠãããå®è¡ããŠã¿ãŠãã ããã ãã®å Žåããã®ããŒã¿ã«åºã¥ããŠååŒãè¡ãåã«ãæé©åã«å€ãã®æéãè²»ããå¿ èŠãããå¯èœæ§ãéåžžã«é«ããªããŸãã
å圢åŒïŒã§ã¯ãªãæåå圢åŒïŒã§ããŒã¿ãä¿åã§ããèšèªã«æ³šæããããšããå§ãããŸã-ããã¯ãã£ãã¯ããŒã¿ã«é©ããŠããŸãã ãã®ãããªãã¯ãããžãŒã®äžã«ã¯ã KDB ã OneTick ã SECDB ïŒGoldman Sachsã§äœæïŒãšåŒã°ãããã®ããããŸãã æ ªäŸ¡ãç¶æããå¿ èŠãããå ŽåãPosgreSQLã䜿çšããMySQLã¯åé¡ãããŸããã
ããã°ã®ã€ã³ã¿ãã¥ãŒã§ã SmartXã¿ãŒããã«éçºè ã®Andrey Gorkovenkoã¯ãCïŒãšC ++ã䜿çšããŠç¬èªã®ååŒãããããäœæãããšè¿°ã¹ãŸããã
åœåãCïŒã§ãããžã§ã¯ããäœæããŸãããå®æãã補åãäœæããæ¹ãç°¡åã§é«éã ã£ãããã§ãã .NETãã©ãããã©ãŒã ã§äœ¿çšå¯èœãªæ©èœã¯éåžžã«è±å¯ã§ããïŒã³ã³ãããŒãã¹ããªãŒã ããã¡ã€ã«ãXMLãGUIã®äœ¿çšïŒãé©åãªéžæã«ãªããŸãã C ++ã«åãæ¿ããçç±ã¯äžè¬çã§ã-ååãªããã©ãŒãã³ã¹ããããŸããã çŸåšããã®ç¹ã«é¢ãããœãããŠã§ã¢ã®èŠä»¶ã¯éåžžã«é«ããªã£ãŠããŸããæŠç¥ãåã«ãŠã³ãããæéã¯ãã€ã¯ãç§åäœã§æž¬å®ãããŸãã ãã€ã¯ãç§ããšã«ã«ãŠã³ããããŸãã
ãã®èšèªã®æ-CïŒãšC ++-ã¯éåžžã«å®è¡å¯èœã§ãã æ°ããååŒæŠç¥ãäœæããããå€ãæŠç¥ãå€æŽãããããã®ã«1ã2æéããããŸãã è€éãªæ°åŠã®å Žåã1æ¥åã åæã«ãããã¯ãã¹ãæ©èœãã·ã¹ãã ã«çµã¿èŸŒãŸããŠãããããå±¥æŽããŒã¿ã§æ°ããæŠç¥ãããã«ãã¹ãã§ããŸãã ããã«ãæŠç¥ãæé©åããããã«äœ¿çšã§ããéºäŒçã¢ã«ãŽãªãºã ããããŸãã
Finam JSCã®ã¢ã«ãŽãªãºã ååŒéšéã®è²¬ä»»è ã§ããAleksey Afanasevskyã¯ãé«éååŒãããããäœæããããã«æ¬¡ã®ããã°ã©ãã³ã°èšèªãåŒã³åºããŸãã ã
C ++ãšçŽç²ãªCã¯ãããã®ã¿ã¹ã¯ã«éåžžã«é©ããŠããŸããŸããé«éããããã¯ã»ãšãã©ã¢ã»ã³ãã©ãŒã§äœæãããŸã-ããã§ã¯ããã©ã€ããŒã«ããäœæ¥ã®æšæºçãªã¡ã«ããºã ããã€ãã¹ããŠããããã¯ãŒã¯ã«ãŒãã¡ã¢ãªãžã®ããŒã¿ã®çŽæ¥èªã¿åãããã³æžã蟌ã¿ã®ã¡ã«ããºã ã«èšåãã䟡å€ããããŸãFPGAã®ãããªãè¶ é«éããã°ã©ããã«ããŒããŠã§ã¢ãã
StockSharpãã©ãããã©ãŒã ã®åµèšè ã§ããããã€ã«ã»ã¹ããŒãã¯ãããŸããŸãªããã°ã©ãã³ã°èšèªã®ã¢ããªã±ãŒã·ã§ã³åéã«ã€ããŠæ¬¡ã®ããã«èª¬æããŠããŸãã
ååŒã®èšèªã¯ã2ã€ã®ãµãã°ã«ãŒãã«åããããšãã§ããŸãã
1ïŒãã©ãããã©ãŒã èšèªã RãMatlabãªã©ã èšèªã®å質ã¯ãã©ãããã©ãŒã èªäœãšå¯æ¥ã«é¢é£ããŠãããããèšèªãåå¥ã«è§£æããŠã¢ããã°ãšæ¯èŒããããšã¯ããŸãæå³ããããŸããã äžéšã®ãã©ãããã©ãŒã ãæé©ã§ããããèšèªãéåžžã«äžäŸ¿ãªå Žåããã¹ãŠã®æ¬ ç¹ã«é¢ä¿ãªã䜿çšããå¿ èŠããããŸãã ãŸããéã«ãäžäŸ¿ãªãã©ãããã©ãŒã ã§å®å šã«äŸ¿å©ãªèšèªã®å Žåããã®èšèªã¯ãŸã éçºçšã«éžæãããŸããã
2ïŒãã©ãããã©ãŒã ã«äŸåããªãèšèªã CïŒãJavaãC ++ãPythonãªã©...
aïŒJavaãšCïŒïŒ= .NETïŒã¯ã»ãŒåäžã®ãã©ãããã©ãŒã ã§ãã Javaã¯äž»ã«nixã©ã€ã¯ãªã·ã¹ãã ã§äœ¿çšãããŸãã Windowsã®CïŒã ä»ã®ã·ã¹ãã ã®ãã¬ãŒããŒãããWindowsã®ãã¬ãŒããŒã®æ¹ãå€ãããã StockSharpãã©ãããã©ãŒã ã®åºç€ãšããŠCïŒãéžæããŸããïŒã¢ãã€ã«ãã©ãããã©ãŒã ã¯åºæ¬çã§ã¯ãªãè£å®çã§ãããããAndroidã¯ã«ãŠã³ãããŸããïŒã
bïŒC ++ã«é¢ããŠã¯ããã®è€éãã®ããããã¬ãŒããŒã®éã§ã¯å®éã«ã¯éçºãããŠããŸããã ããããããã¯ããã®ããã°ã©ããŒã«ãã£ãŠäœ¿çšãããéãè² è·ãšè¿ éãªå¿çãåããã·ã¹ãã ãäœæããŸãã
cïŒPythonïŒListãHaskellãªã©ã®èšèªã¯ãã®ã«ããŽãªã«è¿œå ã§ããŸãïŒã¯ãã¢ã«ãŽãªãºã ã®åââé¡ã解決ããããã®ã·ã³ãã«ãªããŒã«ã§ãã ãã¬ãŒããŒã¯ããé »ç¹ã«ãã®èšèªãéžæããŸãã ãããããã®ãããªèšèªã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšã®è²§åŒ±ãªçµ±åã貧匱ãªããã©ãŒãã³ã¹ãããã³åªããã°ã©ãã£ãã¯ã¹ã©ã€ãã©ãªã®æ¬ åŠã«ããããã©ãããã©ãŒã ã®æ§ç¯ã«å¶éãããŠããŸãã
äžçªäžã®è¡ã§ã¯ãããããã¿ã¹ã¯ããŠãŒã¶ãŒã®ã«ããŽãªãŒã«æ®éçã«äŸ¿å©ãªèšèªã¯ååšããªããšèšããŸãã ãããã£ãŠãèšèªãéžæããåã«ã1ã€ãŸãã¯å¥ã®ããŒã«ã®å©ç¹ã§ã¯ãªããç¬èªã®ã¿ã¹ã¯ãšèœåãç解ããããšãéèŠã§ãã
ãããã«
éèåžå Žã§åäœãããã¬ãŒãã£ã³ã°ãããããŸãã¯ãã®ä»ã®ã·ã¹ãã ãäœæããããã®ããã°ã©ãã³ã°èšèªãéžæããã®ã¯ç°¡åãªäœæ¥ã§ã¯ãããŸããã é©åãªéçºããŒã«ãéžæããã«ã¯ãå°æ¥ã®ã·ã¹ãã å šäœã®ã¢ãŒããã¯ãã£ã培åºçã«åæããå¿ èŠããããŸãã ããã©ãŒãã³ã¹ãéçºã®å®¹æãããã¹ããé¢é£ã©ã€ãã©ãªã®ãœãŒã¹ã³ãŒãã®å¯çšæ§ãšå®å®æ§ãªã©ãããŸããŸãªèŠå ãèæ ®ããããšãéèŠã§ãã
ãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®æ§è³ªã¯ã圌女ã®äººçã®ããŸããŸãªæ®µéã§ããŸããŸãªãã¯ãããžãŒã䜿çšããã®ã«åœ¹ç«ã¡ãŸããé·å¹Žã«ããã£ãŠå©çãããããã¢ã«ãŽãªãºã ãããã°ã©ã ããããšã¯ã§ããŸããã ãã®ãããžã§ã¯ãã¯çµ¶ããéçºããã³è¿ä»£åããããã®ç涯ãéããŠç¹å®ã®åé¡ã解決ããããã«ããŸããŸãªããã°ã©ãã³ã°èšèªãé©ããŠããå ŽåããããŸãã
ãã®çµæãC ++ãŸãã¯CUDAã䜿çšããŠããã»ããµããã°ããæäœããJavaã䜿çšããŠããŒã¿ãåŠçããPythonã䜿çšããŠå±¥æŽããŒã¿ããã¹ãããExcel / VBAã䜿çšããŠã¬ããŒããäœæããã·ã¹ãã ããããŸãã