[{"data":1,"prerenderedAt":303},["ShallowReactive",2],{"indicators:core-concepts/keyword-arguments":3},{"slug":4,"filePath":5,"frontmatter":6,"rawMarkdown":11,"tree":12},"core-concepts/keyword-arguments","core-concepts/keyword-arguments.md",{"title":7,"description":8,"order":9,"section":10},"Keyword arguments","In Indicators this is the options object on param, input, output, box, and segment: every optional setting of a declaration is a named field of its last…",26,"core-concepts","---\ntitle: \"Keyword arguments\"\ndescription: \"In Indicators this is the options object on param, input, output, box, and segment: every optional setting of a declaration is a named field of its last…\"\norder: 26\nsection: \"core-concepts\"\n---\n\n\u003C!-- source: docs/indicators/core-concepts/keyword-arguments.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit -->\n\n# Keyword arguments\n\nIn Indicators this is the options object on `param`, `input`, `output`, `box`, and `segment`: every optional setting of a declaration is a named field of its last argument (`param(\"period\", 20, { min: 1, max: 200, description: \"Lookback\" })`, `input(\"btc\", ohlcv.close, { symbol: \"BTCUSDT\", exchange: \"BINANCE_FUTURES\" })`, `box(\"zone\", { top: hi, bottom: lo, when: gate, opacity: 0.15 })`), in any order, self-documenting, with an unknown field refused by name at build time.\n\nThe nearest form for calls is positional: TA classes and your own functions take arguments in declared order, and a function with many settings takes a class instance instead of a keyword list.\n\nThe full option list per declaration is in [Script definition](../functions/script-definition.md).\n\nWhat stays on kScript (legacy): keyword calls on builtins and user functions (`sma(source=closeTs, period=20)`), and mixing positional and keyword arguments in one call.\n",{"type":13,"children":14,"data":296,"position":298},"root",[15,25,28,29,203,204,219,220,260,261],{"type":16,"value":17,"position":18},"comment"," source: docs/indicators/core-concepts/keyword-arguments.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit ",{"start":19,"end":22},{"line":20,"column":20,"offset":21},1,0,{"line":20,"column":23,"offset":24},138,137,{"type":26,"value":27},"text","\n",{"type":26,"value":27},{"type":30,"tagName":31,"properties":32,"children":33,"position":200},"element","p",{},[34,43,57,64,77,83,96,102,115,122,135,142,155,161,174,180,193],{"type":26,"value":35,"position":36},"In Indicators this is the options object on ",{"start":37,"end":40},{"line":38,"column":20,"offset":39},5,160,{"line":38,"column":41,"offset":42},45,204,{"type":30,"tagName":44,"properties":45,"children":46,"position":54},"code",{},[47],{"type":26,"value":48,"position":49},"param",{"start":50,"end":51},{"line":38,"column":41,"offset":42},{"line":38,"column":52,"offset":53},52,211,{"start":55,"end":56},{"line":38,"column":41,"offset":42},{"line":38,"column":52,"offset":53},{"type":26,"value":58,"position":59},", ",{"start":60,"end":61},{"line":38,"column":52,"offset":53},{"line":38,"column":62,"offset":63},54,213,{"type":30,"tagName":44,"properties":65,"children":66,"position":74},{},[67],{"type":26,"value":68,"position":69},"input",{"start":70,"end":71},{"line":38,"column":62,"offset":63},{"line":38,"column":72,"offset":73},61,220,{"start":75,"end":76},{"line":38,"column":62,"offset":63},{"line":38,"column":72,"offset":73},{"type":26,"value":58,"position":78},{"start":79,"end":80},{"line":38,"column":72,"offset":73},{"line":38,"column":81,"offset":82},63,222,{"type":30,"tagName":44,"properties":84,"children":85,"position":93},{},[86],{"type":26,"value":87,"position":88},"output",{"start":89,"end":90},{"line":38,"column":81,"offset":82},{"line":38,"column":91,"offset":92},71,230,{"start":94,"end":95},{"line":38,"column":81,"offset":82},{"line":38,"column":91,"offset":92},{"type":26,"value":58,"position":97},{"start":98,"end":99},{"line":38,"column":91,"offset":92},{"line":38,"column":100,"offset":101},73,232,{"type":30,"tagName":44,"properties":103,"children":104,"position":112},{},[105],{"type":26,"value":106,"position":107},"box",{"start":108,"end":109},{"line":38,"column":100,"offset":101},{"line":38,"column":110,"offset":111},78,237,{"start":113,"end":114},{"line":38,"column":100,"offset":101},{"line":38,"column":110,"offset":111},{"type":26,"value":116,"position":117},", and ",{"start":118,"end":119},{"line":38,"column":110,"offset":111},{"line":38,"column":120,"offset":121},84,243,{"type":30,"tagName":44,"properties":123,"children":124,"position":132},{},[125],{"type":26,"value":126,"position":127},"segment",{"start":128,"end":129},{"line":38,"column":120,"offset":121},{"line":38,"column":130,"offset":131},93,252,{"start":133,"end":134},{"line":38,"column":120,"offset":121},{"line":38,"column":130,"offset":131},{"type":26,"value":136,"position":137},": every optional setting of a declaration is a named field of its last argument (",{"start":138,"end":139},{"line":38,"column":130,"offset":131},{"line":38,"column":140,"offset":141},174,333,{"type":30,"tagName":44,"properties":143,"children":144,"position":152},{},[145],{"type":26,"value":146,"position":147},"param(\"period\", 20, { min: 1, max: 200, description: \"Lookback\" })",{"start":148,"end":149},{"line":38,"column":140,"offset":141},{"line":38,"column":150,"offset":151},242,401,{"start":153,"end":154},{"line":38,"column":140,"offset":141},{"line":38,"column":150,"offset":151},{"type":26,"value":58,"position":156},{"start":157,"end":158},{"line":38,"column":150,"offset":151},{"line":38,"column":159,"offset":160},244,403,{"type":30,"tagName":44,"properties":162,"children":163,"position":171},{},[164],{"type":26,"value":165,"position":166},"input(\"btc\", ohlcv.close, { symbol: \"BTCUSDT\", exchange: \"BINANCE_FUTURES\" })",{"start":167,"end":168},{"line":38,"column":159,"offset":160},{"line":38,"column":169,"offset":170},323,482,{"start":172,"end":173},{"line":38,"column":159,"offset":160},{"line":38,"column":169,"offset":170},{"type":26,"value":58,"position":175},{"start":176,"end":177},{"line":38,"column":169,"offset":170},{"line":38,"column":178,"offset":179},325,484,{"type":30,"tagName":44,"properties":181,"children":182,"position":190},{},[183],{"type":26,"value":184,"position":185},"box(\"zone\", { top: hi, bottom: lo, when: gate, opacity: 0.15 })",{"start":186,"end":187},{"line":38,"column":178,"offset":179},{"line":38,"column":188,"offset":189},390,549,{"start":191,"end":192},{"line":38,"column":178,"offset":179},{"line":38,"column":188,"offset":189},{"type":26,"value":194,"position":195},"), in any order, self-documenting, with an unknown field refused by name at build time.",{"start":196,"end":197},{"line":38,"column":188,"offset":189},{"line":38,"column":198,"offset":199},477,636,{"start":201,"end":202},{"line":38,"column":20,"offset":39},{"line":38,"column":198,"offset":199},{"type":26,"value":27},{"type":30,"tagName":31,"properties":205,"children":206,"position":216},{},[207],{"type":26,"value":208,"position":209},"The nearest form for calls is positional: TA classes and your own functions take arguments in declared order, and a function with many settings takes a class instance instead of a keyword list.",{"start":210,"end":213},{"line":211,"column":20,"offset":212},7,638,{"line":211,"column":214,"offset":215},194,831,{"start":217,"end":218},{"line":211,"column":20,"offset":212},{"line":211,"column":214,"offset":215},{"type":26,"value":27},{"type":30,"tagName":31,"properties":221,"children":222,"position":257},{},[223,232,250],{"type":26,"value":224,"position":225},"The full option list per declaration is in ",{"start":226,"end":229},{"line":227,"column":20,"offset":228},9,833,{"line":227,"column":230,"offset":231},44,876,{"type":30,"tagName":233,"properties":234,"children":236,"position":245},"a",{"href":235},"../functions/script-definition.md",[237],{"type":26,"value":238,"position":239},"Script definition",{"start":240,"end":242},{"line":227,"column":41,"offset":241},877,{"line":227,"column":243,"offset":244},62,894,{"start":246,"end":247},{"line":227,"column":230,"offset":231},{"line":227,"column":248,"offset":249},98,930,{"type":26,"value":251,"position":252},".",{"start":253,"end":254},{"line":227,"column":248,"offset":249},{"line":227,"column":255,"offset":256},99,931,{"start":258,"end":259},{"line":227,"column":20,"offset":228},{"line":227,"column":255,"offset":256},{"type":26,"value":27},{"type":30,"tagName":31,"properties":262,"children":263,"position":293},{},[264,273,286],{"type":26,"value":265,"position":266},"What stays on kScript (legacy): keyword calls on builtins and user functions (",{"start":267,"end":270},{"line":268,"column":20,"offset":269},11,933,{"line":268,"column":271,"offset":272},79,1011,{"type":30,"tagName":44,"properties":274,"children":275,"position":283},{},[276],{"type":26,"value":277,"position":278},"sma(source=closeTs, period=20)",{"start":279,"end":280},{"line":268,"column":271,"offset":272},{"line":268,"column":281,"offset":282},111,1043,{"start":284,"end":285},{"line":268,"column":271,"offset":272},{"line":268,"column":281,"offset":282},{"type":26,"value":287,"position":288},"), and mixing positional and keyword arguments in one call.",{"start":289,"end":290},{"line":268,"column":281,"offset":282},{"line":268,"column":291,"offset":292},170,1102,{"start":294,"end":295},{"line":268,"column":20,"offset":269},{"line":268,"column":291,"offset":292},{"quirksMode":297},false,{"start":299,"end":300},{"line":20,"column":20,"offset":21},{"line":301,"column":20,"offset":302},12,1103,1790157146365]