Community

cancel
Showing results for
Show  only  | Search instead for
Did you mean:
New Member

Random Numbers in Quiz Table

I want to generate a table that looks something like this, which has a different starting spot price [s] for each version of the quiz and a different strike price [k]. I'd then ask the students to infer the strike price by looking at the table. Preferably I'd plot this in Canvas but I don't think that functionality exists yet. If I'm wrong, please let me know.

Here's what I want Canvas to produce after randomly generating a starting spot price for the table [s] and a random strike price [k].

What is the strike price of the following call option?

 Spot Price (\$) Call option Payoff (\$) 2 0 3 0 4 0 5 0 6 0 7 1 8 2 9 3 10 4

What I coded into the Canvas table:

What is the strike price of the following option?

 Spot Price (\$) Call option Payoff (\$) [s] max(0,[s]-[k]) [s]+1 max(0,[s]+1-[k]) [s]+2 max(0,[s]+2-[k]) [s]+3 max(0,[s]+3-[k]) [s]+4 max(0,[s]+4-[k]) [s]+5 max(0,[s]+5-[k]) [s]+6 max(0,[s]+6-[k]) [s]+7 max(0,[s]+7-[k]) [s]+8 max(0,[s]+8-[k])

What canvas produces

What is the strike price of the following option?

 Spot Price (\$) Call option Payoff (\$) 2 max(0,2-6) 2+1 max(0,2+1-6) 2+2 max(0,2+2-6) 2+3 max(0,2+3-6) 2+4 max(0,2+4-6) 2+5 max(0,2+5-6) 2+6 max(0,2+6-6) 2+7 max(0,2+7-6) 2+8 max(0,2+8-6)

How do I get canvas to compute the formula in a table using the variables [s] and [k]? Better yet, how do I plot this function?

Thanks!

Brian

Tags (4)
1 Solution
Community Champion

That capability does not currently exist in Canvas. There have been several feature requests regarding better random number generation and the ability to use generated values within the question text. Currently, neither exists. Neither does plotting values like you've asked for.

The best you can achieve with native Canvas technology is to make multiple versions of the question, put them into a question group (or a question bank) and have Canvas randomly pick one of them.

When I've needed similar functionality (except for the graph), I've used Excel to generate questions and then used Respondus to import them into Canvas. I've also written PHP code to generate multiple varieties of a question and directly import them into Canvas, but it was very case specific and not intended to be used as a framework. That generated 150 versions of 9 questions -- Canvas still bogs down every time I try to open that quiz.

6 Replies
Community Champion

That capability does not currently exist in Canvas. There have been several feature requests regarding better random number generation and the ability to use generated values within the question text. Currently, neither exists. Neither does plotting values like you've asked for.

The best you can achieve with native Canvas technology is to make multiple versions of the question, put them into a question group (or a question bank) and have Canvas randomly pick one of them.

When I've needed similar functionality (except for the graph), I've used Excel to generate questions and then used Respondus to import them into Canvas. I've also written PHP code to generate multiple varieties of a question and directly import them into Canvas, but it was very case specific and not intended to be used as a framework. That generated 150 versions of 9 questions -- Canvas still bogs down every time I try to open that quiz.

New Member

Thanks for the quick response James! Too bad the functionality doesn't

exist yet, but I'll stay tuned for future updates. Thanks again!

New Member

4 years later... I have created a chrome extension that will enable you to do that. Download it from: https://chrome.google.com/webstore/detail/canvas-quiz%20/jbpanaoeongimfdcfbnhfaagblakgpca?hl=en&auth...

[s1] [m1]

[s2] [m2]

[s3] [m3]

...

in the formula sections add these:

s1 = range(2,10)

k = range(1,5)

s2= s1+1

s3 = s1+2

...

m1 = Math.max(0,s1-k)

m2 = Math.max(0,s2-k)

...

Community Champion

I haven't tested it, but that looks easier than editing the values. Is there documentation in the extension?

The best I've come up with so far is manipulating the web page is explained in https://community.canvaslms.com/people/james

New Member

Community Team

@bbaugh21 , Canvas is currently in the midst of a comprehensive quiz refactor project, and you can learn more about it by viewing the InstructureCon 2016 presentation ​. If this specialized question type is of interest to you (and I'm a former stockbroker and registered options principal, so it's certainly of interest to me!), please add your feedback to Canvas Studio: Modern Quizzing Engine​.