{"id":263722,"date":"2023-05-24T12:52:01","date_gmt":"2023-05-24T11:52:01","guid":{"rendered":"https:\/\/www.quantifiedmodels.com\/?p=263722"},"modified":"2023-05-24T13:03:56","modified_gmt":"2023-05-24T12:03:56","slug":"easylanguage-sistema-de-trading-tortugas","status":"publish","type":"post","link":"https:\/\/www.quantifiedmodels.com\/es\/easylanguage-sistema-de-trading-tortugas\/","title":{"rendered":"Easylanguage | Sistema de trading: Tortugas"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;section&#8221; _builder_version=&#8221;4.16&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_row admin_label=&#8221;row&#8221; _builder_version=&#8221;4.21.0&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; max_width=&#8221;2560px&#8221; width=&#8221;100%&#8221; sticky_enabled=&#8221;0&#8243;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.16&#8243; header_text_align=&#8221;justify&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; text_orientation=&#8221;justified&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>He visto una pl\u00e9tora de publicaciones sobre las estrategias de comercio de tortugas donde se proporcionan las reglas y el c\u00f3digo. Los c\u00f3digos van desde una mera ruptura de <em>Donchian<\/em> hasta una representaci\u00f3n bastante cercana. Sin retroalimentaci\u00f3n de cartera din\u00e1mica es bastante imposible programar las restricciones de la cartera como explica <em>Curtis Faith<\/em> en su bien recibido &#8220;Camino de la Tortuga&#8221;. Pero los otros componentes se pueden programar bastante cerca de las descripciones de Curtis. Quer\u00eda proporcionar este c\u00f3digo de una manera concisa para ilustrar algunas de las construcciones esot\u00e9ricas de EasyLanguage y algunos atajos limpios. En primer lugar vamos a echar un vistazo a c\u00f3mo el sistema de trading de las tortugas ha funcionado en el crudo durante los \u00faltimos 15 a\u00f1os.<\/p>\n<p style=\"text-align: justify;\">\n<p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.quantifiedmodels.com\/wp-content\/uploads\/2023\/05\/Grafico-de-TradeStation.png&#8221; show_in_lightbox=&#8221;on&#8221; use_overlay=&#8221;on&#8221; overlay_icon_color=&#8221;#F53A71&#8243; hover_overlay_color=&#8221;rgba(33,7,80,0.6)&#8221; hover_icon=&#8221;&#xe054;||divi||400&#8243; align=&#8221;center&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; width=&#8221;60%&#8221; width_tablet=&#8221;60%&#8221; width_phone=&#8221;60%&#8221; width_last_edited=&#8221;on|desktop&#8221; module_alignment=&#8221;center&#8221; custom_padding=&#8221;10px|20px|10px|20px|false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; text_font=&#8221;TT Octosquares Medium||||||||&#8221; text_text_color=&#8221;#7138DF&#8221; text_font_size=&#8221;14px&#8221; text_orientation=&#8221;center&#8221; custom_margin=&#8221;-20px||||false|false&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; hover_enabled=&#8221;0&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]Gr\u00e1fico de TradeStation del sistema de las tortugas[\/et_pb_text][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.16&#8243; header_text_align=&#8221;justify&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; text_orientation=&#8221;justified&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>&nbsp;<\/p>\n<p>Si hay tendencias en el mercado, el sistema de trading de las tortuga lo atrapar\u00e1. Mira c\u00f3mo el mercado se recuper\u00f3 en 2007 e inmediatamente se recuper\u00f3 en 2008, y mira c\u00f3mo la Tortuga atrap\u00f3 los movimientos \u2013 impresionante. Pero vea c\u00f3mo el sistema deja de funcionar en la congesti\u00f3n. Tom\u00f3 una peque\u00f1a porci\u00f3n del movimiento de 2014 hacia abajo y ha hecho un gran trabajo de atrapar el colapso de la pandemia y el rebote. En mi \u00faltimo post, program\u00e9 la funci\u00f3n<span>\u00a0<\/span><strong>LTL (Last Trader Loser)<\/strong>\u00a0para determinar el \u00e9xito\/fallo de la entrada Turtle System 1. Lo modifiqu\u00e9 ligeramente para este post y lo us\u00e9 en conjunto con Turtle System 2 Entry y el comercio piramidal AddOn de 1\/2N para acercarme lo m\u00e1s posible al n\u00facleo de la l\u00f3gica de entrada\/salida de tortugas.<\/p>\n<p>Voy a proporcionar el ELD para que pueda revisar en su tiempo libre, pero aqu\u00ed est\u00e1n las piezas importantes del c\u00f3digo que es posible que no sea capaz de derivar sin una gran experiencia de programaci\u00f3n.<\/p>\n<p style=\"text-align: justify;\">\n<p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.quantifiedmodels.com\/wp-content\/uploads\/2023\/05\/Grafico-del-futuro-del-crudo-en-TradeStation.png&#8221; show_in_lightbox=&#8221;on&#8221; use_overlay=&#8221;on&#8221; overlay_icon_color=&#8221;#F53A71&#8243; hover_overlay_color=&#8221;rgba(33,7,80,0.6)&#8221; hover_icon=&#8221;&#xe054;||divi||400&#8243; align=&#8221;center&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; width=&#8221;60%&#8221; width_tablet=&#8221;60%&#8221; width_phone=&#8221;60%&#8221; width_last_edited=&#8221;on|desktop&#8221; module_alignment=&#8221;center&#8221; custom_padding=&#8221;10px|20px|10px|20px|false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; text_font=&#8221;TT Octosquares Medium||||||||&#8221; text_text_color=&#8221;#7138DF&#8221; text_font_size=&#8221;14px&#8221; text_orientation=&#8221;center&#8221; custom_margin=&#8221;-20px||||false|false&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; hover_enabled=&#8221;0&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]Gr\u00e1fico del sistema de trading de las tortugas sobre el crudo en TradeStation[\/et_pb_text][et_pb_dmb_code_snippet code=&#8221;SWYgbXBbMV0gPD4gbXAgYW5kIG1wIDw+IDAgdGhlbiAKYmVnaW4KCWlmIG1wID0gMSB0aGVuCgliZWdpbgkKCQlvcmlnRW50cnkgPSBlbnRyeVByaWNlOwoJCW9yaWdFbnRyeU5hbWUgPSAiU3lzMUxvbmciOwoJCUlmIGx0bCA9IEZhbHNlIGFuZCBoID49IGxlcDFbMV0gdGhlbiBvcmlnRW50cnlOYW1lID0gIlN5czJMb25nIjsKCWVuZDsKCWlmIG1wID0tMSB0aGVuCgliZWdpbgkKCQlvcmlnRW50cnkgPSBlbnRyeVByaWNlOwoJCW9yaWdFbnRyeU5hbWUgPSAiU3lzMVNob3J0IjsKCQlJZiBsdGwgPSBGYWxzZSBhbmQgbCA8PSBzZXAxWzFdIHRoZW4gb3JpZ0VudHJ5TmFtZSA9ICJTeXMyU2hvcnQiOwoJZW5kOw==&#8221; style=&#8221;arta&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; body_text_color=&#8221;#FFFFFF&#8221; header_text_color=&#8221;#FFFFFF&#8221; background_color=&#8221;#000000&#8243; custom_margin=&#8221;||45px|||&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_dmb_code_snippet][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.16&#8243; header_text_align=&#8221;justify&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; text_orientation=&#8221;justified&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p><span>Este c\u00f3digo determina si la posici\u00f3n actual del mercado no es plana y es diferente de la posici\u00f3n de mercado de la barra anterior. Si este es el caso, entonces se ha ejecutado una nueva operaci\u00f3n. Esta informaci\u00f3n es necesaria para saber qu\u00e9 salida aplicar sin tener que vincularlas por la fuerza usando las palabras clave <\/span><strong>De Entry de\u00a0<\/strong><span>EasyLanguage. S\u00f3lo necesito saber el nombre de la entrada. El entryPrice es el entryPrice. Aqu\u00ed s\u00e9 si el\u00a0<\/span><strong>LTL<\/strong><span>\u00a0es falso, y el entryPrice es igual o mayor \/menor que (basado en la posici\u00f3n actual del mercado) que los niveles de entrada del sistema 2, entonces s\u00e9 que el sistema 2 nos meti\u00f3 en el trade.<\/span><\/p>\n<p style=\"text-align: justify;\">\n<p>[\/et_pb_text][et_pb_dmb_code_snippet code=&#8221;SWYgbXAgPSAxIGFuZCBvcmlnRW50cnlOYW1lID0gIlN5czFMb25nIiB0aGVuIFNlbGwgY3VycmVudFNoYXJlcyBzaGFyZXMgbmV4dCBiYXIgYXQgbHhwIHN0b3A7CklmIG1wID0tMSBhbmQgb3JpZ0VudHJ5TmFtZSA9ICJTeXMxU2hvcnQiIHRoZW4gYnV5VG9Db3ZlciBjdXJyZW50U2hhcmVzIHNoYXJlcyBuZXh0IGJhciBhdCBzeHAgc3RvcDsKCi8vNTUgYmFyIGNvbXBvbmVudCAtIG5vIGNvbnRpbmdlbmN5IGhlcmUKSWYgbXAgPSAwIGFuZCBsdGwgPSBGYWxzZSB0aGVuIGJ1eSgiNTVCQk8iKSBuZXh0IGJhciBhdCBsZXAxIHN0b3A7CklmIG1wID0gMSBhbmQgb3JpZ0VudHJ5TmFtZSA9ICJTeXMyTG9uZyIgdGhlbiBzZWxsKCI1NUJCTy1MeCIpIGN1cnJlbnRTaGFyZXMgc2hhcmVzIG5leHQgYmFyIGF0IGx4cDEgc3RvcDsKCklmIG1wID0gMCBhbmQgbHRsID0gRmFsc2UgdGhlbiBzZWxsU2hvcnQoIjU1U0JPIikgbmV4dCBiYXIgYXQgc2VwMSBzdG9wOwpJZiBtcCA9LTEgYW5kIG9yaWdFbnRyeU5hbWUgPSAiU3lzMlNob3J0IiB0aGVuIGJ1eVRvQ292ZXIoIjU1U0JPLVN4IikgY3VycmVudFNoYXJlcyBzaGFyZXMgbmV4dCBiYXIgYXQgc3hwMSBzdG9wOw==&#8221; style=&#8221;arta&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; body_text_color=&#8221;#FFFFFF&#8221; header_text_color=&#8221;#FFFFFF&#8221; background_color=&#8221;#000000&#8243; custom_margin=&#8221;||45px|||&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_dmb_code_snippet][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.16&#8243; header_text_align=&#8221;justify&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; text_orientation=&#8221;justified&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>La clave de esta l\u00f3gica son las palabras clave currentShares shares. Este c\u00f3digo indica a TradeStation que liquide todas las acciones o contratos actuales en los niveles stop. Podr\u00eda utilizar los contratos currentContracts si se siente m\u00e1s c\u00f3modo con los futuros La clave de esta l\u00f3gica son las palabras clave currentShares shares. Este c\u00f3digo indica a TradeStation que liquide todas las acciones o contratos actuales en los niveles stop. Podr\u00eda utilizar los contratos currentContracts si lo prefiere.<\/p>\n<p>&nbsp;<\/p>\n<h2><strong>Activaci\u00f3n de la opci\u00f3n de piramidar en TradeStation<\/strong><\/h2>\n<p>&nbsp;<\/p>\n<p>Antes de poder piramidar, debe activarla en Propiedades de estrategia.<\/p>\n<p style=\"text-align: justify;\">\n<p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.quantifiedmodels.com\/wp-content\/uploads\/2023\/05\/Strategy-Properties-TradeStation.png&#8221; show_in_lightbox=&#8221;on&#8221; use_overlay=&#8221;on&#8221; overlay_icon_color=&#8221;#F53A71&#8243; hover_overlay_color=&#8221;rgba(33,7,80,0.6)&#8221; hover_icon=&#8221;&#xe054;||divi||400&#8243; align=&#8221;center&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; width=&#8221;60%&#8221; width_tablet=&#8221;60%&#8221; width_phone=&#8221;60%&#8221; width_last_edited=&#8221;on|desktop&#8221; module_alignment=&#8221;center&#8221; custom_padding=&#8221;10px|20px|10px|20px|false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; text_font=&#8221;TT Octosquares Medium||||||||&#8221; text_text_color=&#8221;#7138DF&#8221; text_font_size=&#8221;14px&#8221; text_orientation=&#8221;center&#8221; custom_margin=&#8221;-20px||||false|false&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; hover_enabled=&#8221;0&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]Ventana de di\u00e1logo en TradeStation para configurar piramidaci\u00f3n[\/et_pb_text][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.21.0&#8243; header_text_align=&#8221;justify&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; text_orientation=&#8221;justified&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p><span>Esta l\u00f3gica agrega posiciones desde la entrada originalPrecio en incrementos de 1\/2N. La descripci\u00f3n de esta l\u00f3gica es un poco borrosa. \u00bfEs el valor N la lectura ATR cuando se puso el primer contrato o se vuelve a calcular din\u00e1micamente? Me equivoqu\u00e9 en el lado de la precauci\u00f3n y us\u00e9 la N cuando se puso el primer contrato. Por lo tanto, para calcular las entradas largas de AddOn, basta con tomar el entryPrice original y agregar currentShares * .5N. As\u00ed que si currentShares es 1, entonces el siguiente nivel de pir\u00e1mide ser\u00eda entryPrice + 1* .5N. Si currentShares es 2 , entonces entryPrice + 2* .5N y as\u00ed sucesivamente. El stop estar\u00e1 en 2N de la \u00faltima entrada. As\u00ed que si pones 4 contratos (especificados en el libro de Curtis), entonces la salida final ser\u00eda 2N desde donde agregaste el 4o contrato. Aqu\u00ed est\u00e1 el c\u00f3digo para eso.<\/span><\/p>\n<p>[\/et_pb_text][et_pb_dmb_code_snippet code=&#8221;dmFyczogbGFzdEVudHJ5UHJpY2UoMCk7CklmIGNzIDw9IDEgdGhlbiBsYXN0RW50cnlQcmljZSA9IGVudHJ5UHJpY2U7CklmIGNzID4gMSBhbmQgY3MgPiBjc1sxXSBhbmQgbXAgPSAxIHRoZW4gbGFzdEVudHJ5UHJpY2UgPSBlbnRyeVByaWNlICsgKChjdXJyZW50U2hhcmVzLTEpICogLjUqTlZhbHVlKTsKSWYgY3MgPiAxIGFuZCBjcyA+IGNzWzFdIGFuZCBtcCA9LTEgdGhlbiBsYXN0RW50cnlQcmljZSA9IGVudHJ5UHJpY2UgLSAoKGN1cnJlbnRTaGFyZXMtMSkgKiAuNSpOVmFsdWUpOwoKLy9JZiBtcCA9IC0xIHRoZW4gcHJpbnQoZCwiICIsbGFzdEVudHJ5UHJpY2UsIiAiLE5WYWx1ZSk7CgpJZiBtcCA9IDEgdGhlbiBzZWxsKCIyTkxvbmdMb3NzIikgY3VycmVudFNoYXJlcyBzaGFyZXMgbmV4dCBiYXIgYXQgbGFzdEVudHJ5UHJpY2UtMipOVmFsdWUgc3RvcDsKSWYgbXAgPS0xIHRoZW4gYnV5VG9Db3ZlcigiMk5TaHJ0TG9zcyIpIGN1cnJlbnRTaGFyZXMgc2hhcmVzIG5leHQgYmFyIGF0IGxhc3RFbnRyeVByaWNlKzIqTlZhbHVlIFN0b3A7CiA=&#8221; style=&#8221;arta&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; body_text_color=&#8221;#FFFFFF&#8221; header_text_color=&#8221;#FFFFFF&#8221; background_color=&#8221;#000000&#8243; custom_margin=&#8221;||45px|||&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_dmb_code_snippet][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.21.0&#8243; header_text_align=&#8221;justify&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; text_orientation=&#8221;justified&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>Presento una nueva variable aqu\u00ed:\u00a0<strong>cs<\/strong>. CS significa currentShares y yo hago un seguimiento de ella de bar a bar. Si currentShares o cs es menor o igual a1 s\u00e9 que la \u00faltima entradaPrice era la entrada originalPrice. Las cosas se complican un poco m\u00e1s cuando empiezas a a\u00f1adir posiciones \u2013 inicialmente no pod\u00eda recordar si el entryPrice de EasyLanguage conten\u00eda el \u00faltimo entryPrice o el original \u2013 resulta que es el original \u2013 bueno saber. Por lo tanto, si currentShares es mayor que uno y currentShares de la barra actual es mayor que currentShares de la barra anterior, entonces s\u00e9 que agregu\u00e9 otro contrato y por lo tanto debo actualizar lastEntryPrice. LastEntryPrice se calcula tomando el entryPrice original y agregando (currentShares-1) * .5N. Ahora esta es la entrada te\u00f3ricaPrecio, porque no tengo en cuenta el deslizamiento en la entrada. Podr\u00edas hacer este ajuste. Por lo tanto, una vez que conozco el lastEntryPrice puedo determinar 2N a partir de ese precio.<\/p>\n<p>&nbsp;<\/p>\n<h3>Salir en 2N Trailing Stop<\/h3>\n<p>[\/et_pb_text][et_pb_dmb_code_snippet code=&#8221;SWYgbXAgPSAxIHRoZW4gc2VsbCgiMk5Mb25nTG9zcyIpIGN1cnJlbnRTaGFyZXMgc2hhcmVzIG5leHQgYmFyIGF0IGxhc3RFbnRyeVByaWNlLTIqTlZhbHVlIHN0b3A7CklmIG1wID0tMSB0aGVuIGJ1eVRvQ292ZXIoIjJOU2hydExvc3MiKSBjdXJyZW50U2hhcmVzIHNoYXJlcyBuZXh0IGJhciBhdCBsYXN0RW50cnlQcmljZSsyKk5WYWx1ZSBTdG9wOw==&#8221; style=&#8221;arta&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; body_text_color=&#8221;#FFFFFF&#8221; header_text_color=&#8221;#FFFFFF&#8221; background_color=&#8221;#000000&#8243; custom_margin=&#8221;||45px|||&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_dmb_code_snippet][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.21.0&#8243; header_text_align=&#8221;justify&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; text_orientation=&#8221;justified&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>Ese es todo el c\u00f3digo ingenioso. A continuaci\u00f3n se muestra la funci\u00f3n y ELD para mi implementaci\u00f3n del sistema de entrada dual Turtle. Ver\u00e1 un c\u00f3digo bastante sofisticado cuando se trata de la entrada del sistema 1 y esto es debido a estos escenarios:<\/p>\n<p>\u00bfQu\u00e9 pasa si usted es te\u00f3ricamente corto y son te\u00f3ricamente detenidos para un verdadero perdedor y se puede entrar en la misma barra en una operaci\u00f3n larga.<\/p>\n<p>\u00bfQu\u00e9 pasa si usted es te\u00f3ricamente corto y el punto de inversi\u00f3n resultar\u00eda en una operaci\u00f3n perdedora. No registrar\u00eda al perdedor a tiempo para entrar en la posici\u00f3n larga en el punto de inversi\u00f3n.<\/p>\n<p>\u00bfQu\u00e9 pasa si usted es realmente corto y el punto de inversi\u00f3n dar\u00eda como resultado un verdadero perdedor, entonces usted querr\u00eda permitir la inversi\u00f3n en ese punto<\/p>\n<p>Probablemente haya otros escenarios, pero creo que cubr\u00ed todas las bases. S\u00f3lo av\u00edsame si ese no es el caso. Lo que hice para validar las entradas fue que program\u00e9 una ruptura\/fallo de 20\/10 d\u00edas con una parada 2N y luego revis\u00e9 la lista y elimin\u00e9 las operaciones que siguieron a una p\u00e9rdida no 2N (10 salida de barra para una p\u00e9rdida o una victoria.) Entonces me asegur\u00e9 de que esas operaciones no estaban en la salida del sistema completo. Hubo un poco de prueba y error. Si ves un error, como dije, av\u00edsame.<\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;section&#8221; _builder_version=&#8221;4.16&#8243; width=&#8221;100%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;0px||0px||false|false&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;1&#8243; make_equal=&#8221;on&#8221; admin_label=&#8221;row&#8221; _builder_version=&#8221;4.16&#8243; width=&#8221;100%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;0px||0px||false|false&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;1&#8243; make_equal=&#8221;on&#8221; _builder_version=&#8221;4.19.5&#8243; _module_preset=&#8221;default&#8221; width=&#8221;100%&#8221; max_width=&#8221;100%&#8221; module_alignment=&#8221;center&#8221; custom_margin=&#8221;0px||0px||false|false&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.19.5&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.20.4&#8243; _module_preset=&#8221;default&#8221; text_font=&#8221;TT Octosquares Medium||||||||&#8221; text_text_color=&#8221;#7138DF&#8221; link_font=&#8221;TT Octosquares Medium|700|||||||&#8221; link_text_color=&#8221;#F53A71&#8243; text_orientation=&#8221;right&#8221; custom_margin=&#8221;0px||0px||false|false&#8221; custom_padding=&#8221;0px||2px||false|false&#8221; global_colors_info=&#8221;{}&#8221;]Art\u00edculo escrito por Quantified Models[\/et_pb_text][et_pb_cta title=&#8221;Canal de YouTube de Quantified Models&#8221; button_url=&#8221;https:\/\/www.youtube.com\/channel\/UC1aM_BnnBAWRSjiApHVGD5w&#8221; url_new_window=&#8221;on&#8221; button_text=&#8221;Mira nuestros videos&#8221; _builder_version=&#8221;4.21.0&#8243; _module_preset=&#8221;default&#8221; header_text_align=&#8221;center&#8221; header_text_color=&#8221;#75E1EE&#8221; header_font_size=&#8221;26px&#8221; body_font_size=&#8221;18px&#8221; background_color=&#8221;#210750&#8243; custom_button=&#8221;on&#8221; button_text_color=&#8221;#210750&#8243; button_bg_color=&#8221;#75E1EE&#8221; button_border_width=&#8221;0px&#8221; button_border_radius=&#8221;0px&#8221; button_font=&#8221;TT Octosquares Medium||||||||&#8221; button_icon=&#8221;&#xe04a;||divi||400&#8243; button_icon_color=&#8221;#FFFFFF&#8221; custom_margin=&#8221;20px||20px||false|false&#8221; custom_padding=&#8221;56px||43px|||&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; button_bg_color__hover=&#8221;#F53A71&#8243; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_bg_enable_color__hover=&#8221;on&#8221; button_text_color__hover=&#8221;#FFFFFF&#8221; button_text_color__hover_enabled=&#8221;on|hover&#8221;]<\/p>\n<p>En nuestro canal de YouTube tenemos varios videos disponibles que pueden resultarle muy \u00fatiles para desarrollar sistemas de trading.<\/p>\n<p>Esperamos que esta informaci\u00f3n te haya sido de utilidad.<\/p>\n<p>&nbsp;<\/p>\n<p>[\/et_pb_cta][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>He visto una pl&eacute;tora de publicaciones sobre las estrategias de comercio de tortugas donde se proporcionan las reglas y el c&oacute;digo. Los c&oacute;digos van desde una mera ruptura de Donchian hasta una representaci&oacute;n bastante cercana. Sin retroalimentaci&oacute;n de cartera din&aacute;mica es bastante imposible programar las restricciones de la cartera como explica Curtis Faith en su [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":269745,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"\u00a0\r\n<p style=\"text-align: justify;\">He visto una pl\u00e9tora de publicaciones sobre las estrategias de comercio de tortugas donde se proporcionan las reglas y el c\u00f3digo. Los c\u00f3digos van desde una mera ruptura de <em>Donchian<\/em> hasta una representaci\u00f3n bastante cercana. Sin retroalimentaci\u00f3n de cartera din\u00e1mica es bastante imposible programar las restricciones de la cartera como explica <em>Curtis Faith<\/em> en su bien recibido \"Camino de la Tortuga\". Pero los otros componentes se pueden programar bastante cerca de las descripciones de Curtis. Quer\u00eda proporcionar este c\u00f3digo de una manera concisa para ilustrar algunas de las construcciones esot\u00e9ricas de EasyLanguage y algunos atajos limpios. En primer lugar vamos a echar un vistazo a c\u00f3mo el sistema de trading de las tortugas ha funcionado en el crudo durante los \u00faltimos 15 a\u00f1os.<\/p>\r\n\u00a0\r\n\r\n[caption id=\"attachment_9171\" align=\"aligncenter\" width=\"1180\"]<img class=\"wp-image-9171\" src=\"https:\/\/www.pqtrader.com\/wp-content\/uploads\/2020\/10\/Gr\u00e1fico-de-TradeStation.png\" alt=\"\" width=\"1180\" height=\"715\" \/> Gr\u00e1fico de TradeStation del sistema de las tortugas[\/caption]\r\n\r\n\u00a0\r\n<p style=\"text-align: justify;\">Si hay tendencias en el mercado, el sistema de trading de las tortuga lo atrapar\u00e1. Mira c\u00f3mo el mercado se recuper\u00f3 en 2007 e inmediatamente se recuper\u00f3 en 2008, y mira c\u00f3mo la Tortuga atrap\u00f3 los movimientos - impresionante. Pero vea c\u00f3mo el sistema deja de funcionar en la congesti\u00f3n. Tom\u00f3 una peque\u00f1a porci\u00f3n del movimiento de 2014 hacia abajo y ha hecho un gran trabajo de atrapar el colapso de la pandemia y el rebote. En mi \u00faltimo post, program\u00e9 la funci\u00f3n <strong>LTL (Last Trader Loser)<\/strong>\u00a0para determinar el \u00e9xito\/fallo de la entrada Turtle System 1. Lo modifiqu\u00e9 ligeramente para este post y lo us\u00e9 en conjunto con Turtle System 2 Entry y el comercio piramidal AddOn de 1\/2N para acercarme lo m\u00e1s posible al n\u00facleo de la l\u00f3gica de entrada\/salida de tortugas.<\/p>\r\n<p style=\"text-align: justify;\">Voy a proporcionar el ELD para que pueda revisar en su tiempo libre, pero aqu\u00ed est\u00e1n las piezas importantes del c\u00f3digo que es posible que no sea capaz de derivar sin una gran experiencia de programaci\u00f3n.<\/p>\r\n\u00a0\r\n\r\n[caption id=\"attachment_9172\" align=\"aligncenter\" width=\"1180\"]<img class=\"wp-image-9172\" src=\"https:\/\/www.pqtrader.com\/wp-content\/uploads\/2020\/10\/Grafico-del-futuro-del-crudo-en-TradeStation.png\" alt=\"\" width=\"1180\" height=\"558\" \/> Gr\u00e1fico del sistema de trading de las tortugas sobre el crudo en TradeStation[\/caption]\r\n\r\n\u00a0\r\n\r\n\u00a0\r\n<pre class=\"line-numbers\"><code class=\"language-pascal\">If mp[1] <> mp and mp <> 0 then \r\nbegin\r\n\tif mp = 1 then\r\n\tbegin\t\r\n\t\torigEntry = entryPrice;\r\n\t\torigEntryName = \"Sys1Long\";\r\n\t\tIf ltl = False and h >= lep1[1] then origEntryName = \"Sys2Long\";\r\n\tend;\r\n\tif mp =-1 then\r\n\tbegin\t\r\n\t\torigEntry = entryPrice;\r\n\t\torigEntryName = \"Sys1Short\";\r\n\t\tIf ltl = False and l <= sep1[1] then origEntryName = \"Sys2Short\";\r\n\tend;\r\nend;<\/code><\/pre>\r\n\u00a0\r\n<p style=\"text-align: justify;\">Este c\u00f3digo determina si la posici\u00f3n actual del mercado no es plana y es diferente de la posici\u00f3n de mercado de la barra anterior. Si este es el caso, entonces se ha ejecutado una nueva operaci\u00f3n. Esta informaci\u00f3n es necesaria para saber qu\u00e9 salida aplicar sin tener que vincularlas por la fuerza usando las palabras clave\u00a0<strong>De Entry de\u00a0<\/strong>EasyLanguage. S\u00f3lo necesito saber el nombre de la entrada. El entryPrice es el entryPrice. Aqu\u00ed s\u00e9 si el\u00a0<strong>LTL<\/strong> es falso, y el entryPrice es igual o mayor \/menor que (basado en la posici\u00f3n actual del mercado) que los niveles de entrada del sistema 2, entonces s\u00e9 que el sistema 2 nos meti\u00f3 en el trade.<\/p>\r\n\u00a0\r\n<pre class=\"line-numbers\"><code class=\"language-pascal\">If mp = 1 and origEntryName = \"Sys1Long\" then Sell currentShares shares next bar at lxp stop;\r\nIf mp =-1 and origEntryName = \"Sys1Short\" then buyToCover currentShares shares next bar at sxp stop;\r\n\r\n\/\/55 bar component - no contingency here\r\nIf mp = 0 and ltl = False then buy(\"55BBO\") next bar at lep1 stop;\r\nIf mp = 1 and origEntryName = \"Sys2Long\" then sell(\"55BBO-Lx\") currentShares shares next bar at lxp1 stop;\r\n\r\nIf mp = 0 and ltl = False then sellShort(\"55SBO\") next bar at sep1 stop;\r\nIf mp =-1 and origEntryName = \"Sys2Short\" then buyToCover(\"55SBO-Sx\") currentShares shares next bar at sxp1 stop;<\/code><\/pre>\r\n\u00a0\r\n<p style=\"text-align: justify;\">La clave de esta l\u00f3gica son las palabras clave currentShares shares. Este c\u00f3digo indica a TradeStation que liquide todas las acciones o contratos actuales en los niveles stop. Podr\u00eda utilizar los contratos currentContracts si se siente m\u00e1s c\u00f3modo con los futuros La clave de esta l\u00f3gica son las palabras clave currentShares shares. Este c\u00f3digo indica a TradeStation que liquide todas las acciones o contratos actuales en los niveles stop. Podr\u00eda utilizar los contratos currentContracts si lo prefiere.<\/p>\r\n\u00a0\r\n<h2><strong>Activaci\u00f3n de la opci\u00f3n de piramidar en TradeStation<\/strong><\/h2>\r\n\u00a0\r\n\r\nAntes de poder piramidar, debe activarla en Propiedades de estrategia.\r\n\r\n\u00a0\r\n\r\n[caption id=\"attachment_9173\" align=\"aligncenter\" width=\"532\"]<img class=\"wp-image-9173 size-full\" src=\"https:\/\/www.pqtrader.com\/wp-content\/uploads\/2020\/10\/Strategy-Properties-TradeStation.png\" alt=\"\" width=\"532\" height=\"543\" \/> Ventana de di\u00e1logo en TradeStation para configurar piramidaci\u00f3n[\/caption]\r\n\r\n\u00a0\r\n<p style=\"text-align: justify;\">Esta l\u00f3gica agrega posiciones desde la entrada originalPrecio en incrementos de 1\/2N. La descripci\u00f3n de esta l\u00f3gica es un poco borrosa. \u00bfEs el valor N la lectura ATR cuando se puso el primer contrato o se vuelve a calcular din\u00e1micamente? Me equivoqu\u00e9 en el lado de la precauci\u00f3n y us\u00e9 la N cuando se puso el primer contrato. Por lo tanto, para calcular las entradas largas de AddOn, basta con tomar el entryPrice original y agregar currentShares * .5N. As\u00ed que si currentShares es 1, entonces el siguiente nivel de pir\u00e1mide ser\u00eda entryPrice + 1* .5N. Si currentShares es 2 , entonces entryPrice + 2* .5N y as\u00ed sucesivamente. El stop estar\u00e1 en 2N de la \u00faltima entrada. As\u00ed que si pones 4 contratos (especificados en el libro de Curtis), entonces la salida final ser\u00eda 2N desde donde agregaste el 4o contrato. Aqu\u00ed est\u00e1 el c\u00f3digo para eso.<\/p>\r\n\u00a0\r\n<pre class=\"line-numbers\"><code class=\"language-pascal\">vars: lastEntryPrice(0);\r\nIf cs <= 1 then lastEntryPrice = entryPrice;\r\nIf cs > 1 and cs > cs[1] and mp = 1 then lastEntryPrice = entryPrice + ((currentShares-1) * .5*NValue);\r\nIf cs > 1 and cs > cs[1] and mp =-1 then lastEntryPrice = entryPrice - ((currentShares-1) * .5*NValue);\r\n\r\n\/\/If mp = -1 then print(d,\" \",lastEntryPrice,\" \",NValue);\r\n\r\nIf mp = 1 then sell(\"2NLongLoss\") currentShares shares next bar at lastEntryPrice-2*NValue stop;\r\nIf mp =-1 then buyToCover(\"2NShrtLoss\") currentShares shares next bar at lastEntryPrice+2*NValue Stop;<\/code><\/pre>\r\n\u00a0\r\n<p style=\"text-align: justify;\">Presento una nueva variable aqu\u00ed:\u00a0<strong>cs<\/strong>. CS significa currentShares y yo hago un seguimiento de ella de bar a bar. Si currentShares o cs es menor o igual a1 s\u00e9 que la \u00faltima entradaPrice era la entrada originalPrice. Las cosas se complican un poco m\u00e1s cuando empiezas a a\u00f1adir posiciones \u2013 inicialmente no pod\u00eda recordar si el entryPrice de EasyLanguage conten\u00eda el \u00faltimo entryPrice o el original \u2013 resulta que es el original \u2013 bueno saber. Por lo tanto, si currentShares es mayor que uno y currentShares de la barra actual es mayor que currentShares de la barra anterior, entonces s\u00e9 que agregu\u00e9 otro contrato y por lo tanto debo actualizar lastEntryPrice. LastEntryPrice se calcula tomando el entryPrice original y agregando (currentShares-1) * .5N. Ahora esta es la entrada te\u00f3ricaPrecio, porque no tengo en cuenta el deslizamiento en la entrada. Podr\u00edas hacer este ajuste. Por lo tanto, una vez que conozco el lastEntryPrice puedo determinar 2N a partir de ese precio.<\/p>\r\n\r\n<h3>Salir en 2N Trailing Stop<\/h3>\r\n<pre class=\"line-numbers\"><code class=\"language-pascal\">If mp = 1 then sell(\"2NLongLoss\") currentShares shares next bar at lastEntryPrice-2*NValue stop;\r\nIf mp =-1 then buyToCover(\"2NShrtLoss\") currentShares shares next bar at lastEntryPrice+2*NValue Stop;<\/code><\/pre>\r\n\u00a0\r\n<p style=\"text-align: justify;\">Ese es todo el c\u00f3digo ingenioso. A continuaci\u00f3n se muestra la funci\u00f3n y ELD para mi implementaci\u00f3n del sistema de entrada dual Turtle. Ver\u00e1 un c\u00f3digo bastante sofisticado cuando se trata de la entrada del sistema 1 y esto es debido a estos escenarios:<\/p>\r\n<p style=\"text-align: justify;\">\u00bfQu\u00e9 pasa si usted es te\u00f3ricamente corto y son te\u00f3ricamente detenidos para un verdadero perdedor y se puede entrar en la misma barra en una operaci\u00f3n larga.<\/p>\r\n<p style=\"text-align: justify;\">\u00bfQu\u00e9 pasa si usted es te\u00f3ricamente corto y el punto de inversi\u00f3n resultar\u00eda en una operaci\u00f3n perdedora. No registrar\u00eda al perdedor a tiempo para entrar en la posici\u00f3n larga en el punto de inversi\u00f3n.<\/p>\r\n<p style=\"text-align: justify;\">\u00bfQu\u00e9 pasa si usted es realmente corto y el punto de inversi\u00f3n dar\u00eda como resultado un verdadero perdedor, entonces usted querr\u00eda permitir la inversi\u00f3n en ese punto<\/p>\r\n<p style=\"text-align: justify;\">Probablemente haya otros escenarios, pero creo que cubr\u00ed todas las bases. S\u00f3lo av\u00edsame si ese no es el caso. Lo que hice para validar las entradas fue que program\u00e9 una ruptura\/fallo de 20\/10 d\u00edas con una parada 2N y luego revis\u00e9 la lista y elimin\u00e9 las operaciones que siguieron a una p\u00e9rdida no 2N (10 salida de barra para una p\u00e9rdida o una victoria.) Entonces me asegur\u00e9 de que esas operaciones no estaban en la salida del sistema completo. Hubo un poco de prueba y error. Si ves un error, como dije, av\u00edsame.<\/p>\r\nPuedes acceder a m\u00e1s informaci\u00f3n del \u00faltimo libro de George Pruitt \"Trend Following Systems\" <strong><a href=\"https:\/\/www.trendfollowingsystems.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">AQU\u00cd<\/a><\/strong>.\r\n<p style=\"text-align: justify;\"><\/p>","_et_gb_content_width":"","_ayudawp_aiss_exclude":false,"_ayudawp_aiss_summary":"","_ayudawp_aiss_summary_provider":"","_ayudawp_aiss_summary_hash":"","footnotes":""},"categories":[114],"tags":[],"class_list":["post-263722","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tradestation-es"],"_links":{"self":[{"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/posts\/263722","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/comments?post=263722"}],"version-history":[{"count":0,"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/posts\/263722\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/media\/269745"}],"wp:attachment":[{"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/media?parent=263722"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/categories?post=263722"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.quantifiedmodels.com\/es\/wp-json\/wp\/v2\/tags?post=263722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}