Closed sugizo closed 8 months ago
env google colab
google colab
steps pip install -U pynescript
pip install -U pynescript
f = open('rsi_strategy.pine', "w") f.write(""" //@version=5 strategy("RSI Strategy", overlay=true) length = input( 14 ) overSold = input( 30 ) overBought = input( 70 ) price = close vrsi = ta.rsi(price, length) co = ta.crossover(vrsi, overSold) cu = ta.crossunder(vrsi, overBought) if (not na(vrsi)) if (co) strategy.entry("RsiLE", strategy.long, comment="RsiLE") if (cu) strategy.entry("RsiSE", strategy.short, comment="RsiSE") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr) """) f.close()
execute !pynescript parse-and-dump rsi_strategy.pine
!pynescript parse-and-dump rsi_strategy.pine
result
Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, ResultNameableForward: global_statement, True) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, Forward: expression, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, expression, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, ResultNameableForward: structure, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, if_structure, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (246, ResultNameableForward: local_block, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/pynescript", line 8, in <module> sys.exit(cli()) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1157, in __call__ return self.main(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1078, in main rv = self.invoke(ctx) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 783, in invoke return __callback(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/pynescript/__main__.py", line 40, in parse_and_dump script_node = parse_file(f, encoding=encoding) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/helpers.py", line 152, in parse_file script_node = parse_string( File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/helpers.py", line 79, in parse_string parse_results = script_expr.parse_string( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 1187, in parse_string loc, tokens = self._parse(instring, 0) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 219, in parseImpl loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5102, in parseImpl return super().parseImpl(instring, loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5010, in parseImpl loc, tmptokens = self_expr_parse(instring, preloc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4037, in parseImpl loc, resultlist = self.exprs[0]._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4293, in parseImpl return e._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 219, in parseImpl loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4293, in parseImpl return e._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4293, in parseImpl return e._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 219, in parseImpl loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4059, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 86, in parseImpl self.expr.try_parse(instring, anchor_loc, doActions) TypeError: ParserElement.try_parse() takes 3 positional arguments but 4 were given
execute !pynescript parse-and-unparse rsi_strategy.pine
!pynescript parse-and-unparse rsi_strategy.pine
Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, ResultNameableForward: global_statement, True) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, Forward: expression, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, expression, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, ResultNameableForward: structure, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (224, if_structure, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5553, in parseImpl prev_loc, prev_result = memo[loc, self, doActions] KeyError: (246, ResultNameableForward: local_block, False) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/pynescript", line 8, in <module> sys.exit(cli()) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1157, in __call__ return self.main(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1078, in main rv = self.invoke(ctx) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 783, in invoke return __callback(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/pynescript/__main__.py", line 71, in parse_and_unparse script_node = parse_file(f, encoding=encoding) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/helpers.py", line 152, in parse_file script_node = parse_string( File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/helpers.py", line 79, in parse_string parse_results = script_expr.parse_string( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 1187, in parse_string loc, tokens = self._parse(instring, 0) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 219, in parseImpl loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5102, in parseImpl return super().parseImpl(instring, loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5010, in parseImpl loc, tmptokens = self_expr_parse(instring, preloc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4037, in parseImpl loc, resultlist = self.exprs[0]._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4293, in parseImpl return e._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 219, in parseImpl loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4293, in parseImpl return e._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4293, in parseImpl return e._parse( File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 219, in parseImpl loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4059, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 5572, in parseImpl new_loc, new_peek = super().parseImpl(instring, loc, False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 4569, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) File "/usr/local/lib/python3.10/dist-packages/pyparsing/core.py", line 850, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) File "/usr/local/lib/python3.10/dist-packages/pynescript/ast/parser/parser_elements.py", line 86, in parseImpl self.expr.try_parse(instring, anchor_loc, doActions) TypeError: ParserElement.try_parse() takes 3 positional arguments but 4 were given
best regards
pip install pyparsing==3.0.9 --upgrade
works
env
google colab
steps
pip install -U pynescript
execute
!pynescript parse-and-dump rsi_strategy.pine
result
execute
!pynescript parse-and-unparse rsi_strategy.pine
result
best regards