Exactly how I would approach it.
In order to store the myargument() definition and the "invoking" widget separately (i.e. in separate tiddlers) you have a few options.
Store it in any tiddler tagged `$:/tags/Macro`. This allows invoking the variable valuw from any scope/context within the wiki, and also allows "local overrides", i..e you can re-define it in another tiddler without that tag, and within that tiddler's scope it will have the new value.
Or, you can store it in any tiddler, and in the tiddler you want to invoke it in, you put the pragma `\import [[NameOfTidWith
Definition]]` (the param in a filter, so you can import multiple bun tag with `[tag[TagToImport]]`, etc). This imports all macro definitions into the current scope.
Best,
Joshua Fontany