I believe that what you are looking for is savedsearch, which you kind of touch with your third example.
Saved searches can be created two ways, either through the interface(Settings -> Searches, reports, and alerts -> New) or by editing(or creating) a savedsearch.conf in the apps directory( ..\etc\<app>\local\savedsearch.conf ).
To include the variable names in the saved search you have to specify a placeholder variable:
index=test sourcetype=<my-sourcetype> host=$my-variable$ .....
When wanting to use the savedsearch in a panel, specify the search string for the panel like this:
| savedsearch <my-saved-search> my-variable=<my-input-token>
Now you should be able to use the same search string in all the dashboards and only have to edit the main search string one place.
Here is an example of a minimal savedsearch.conf for the saved search test :
[test]
description = A minimal test example of savedsearch with variable
search = index=* sourcetype=test | extract pairdelim="; " kvdelim=":" | search user=$my-variable$
Cheers,
... View more